我正在尝试从DataFrame(df)的两列创建字典
mydict={x :y for x in df['Names'] for y in df['Births']}
但是所有的值都是相同的(列中的最后一个值)!
{'Bob': 973, 'Jessica': 973, 'John': 973, 'Mary': 973, 'Mel': 973}
我检查了该列,但它有许多其他值,我做错了什么?
0md85ypi1#
我认为Abdou用dict(zip(dff['Names'], dff['Births']))击中了要害,但是如果你想用dict理解来做,你可以这样做:
dict(zip(dff['Names'], dff['Births']))
In [1]: import pandas as pd In [2]: df = pd.DataFrame( ...: [{'Births': 971, 'Names': 'Bob'}, ...: {'Births': 972, 'Names': 'Jessica'}, ...: {'Births': 973, 'Names': 'John'}, ...: {'Births': 974, 'Names': 'Mary'}, ...: {'Births': 975, 'Names': 'Mel'}]) In [3]: {d['Names']: d['Births'] for d in df.to_dict(orient='records')} Out[3]: {'Bob': 971, 'Jessica': 972, 'John': 973, 'Mary': 974, 'Mel': 975}
kx7yvsdv2#
try my_dict = {行.名称:行. df.iterows()中(索引,行)的出生}
2条答案
按热度按时间0md85ypi1#
我认为Abdou用
dict(zip(dff['Names'], dff['Births']))
击中了要害,但是如果你想用dict理解来做,你可以这样做:kx7yvsdv2#
try my_dict = {行.名称:行. df.iterows()中(索引,行)的出生}