![](/img/trans.png)
[英]Using python comprehension with dictionary to assign values to pandas dataframe
[英]Python dictionary comprehension with Pandas
我正在嘗試從 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}
我檢查了該列,它還有許多其他值,我做錯了什么?
我認為Abdou用dict(zip(dff['Names'], dff['Births']))
擊中了頭,但是如果您想通過dict理解來做到這一點,可以這樣做:
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}
試試 my_dict = {row.Names:row.Births for (index,row) in df.iterows()}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.