【发布时间】:2019-05-15 01:03:55
【问题描述】:
我在数据框中有一列,每一行都是一个列表,它是许多具有相同键的字典的集合。我想从字典中的同一个键中获取所有项目。
我有这个清单:
s = [{'category': 'Public',
'name': 'Newspaper',
'person': 'A'},
{'category': 'Music',
'name': 'Andre',
'person': 'B'},
{'category': 'Music',
'name': 'Indian',
'person': 'A'},
{'category': 'Artist',
'name': 'Rihe',
'person': 'D'},
{'category': 'Interest',
'name': 'Sport',
'person': 'B'}]
我尝试过使用循环和 itemgetter,但由于数据量大,这需要很长时间。我正在寻找一种更有效的方法。
from operator import itemgetter
category = []
name_page = []
getter_category = itemgetter('category')
getter_name = itemgetter('name')
for element in s:
name_page.append(getter_name(element))
category.append(getter_category(element))
我想要更高效的东西,比如:
s['category'] = ['Public','Music','Music','Artist','Interest']
s['name'] = ['Newspaper','Andre','Indian','Rihe','Sport']
s['person'] = ['A','B','A','D','B']
【问题讨论】:
标签: python python-3.x python-2.7