我有一个数据框和一个字典,dict的键与数据帧的索引值相同,如下所示:
A = pd.DataFrame([[1, 5, 2], [2, 4, 4], [3, 3, 1], [4, 2, 2], [5, 1, 4]],
columns=['A', 'B', 'C'], index=["1a", "2a", "3a", "4a", "5a"])
B = {'1a': 0.5, '2a': 0.75, '3a': 0.625, '4a': 0.55, '5a': 1}
如何将字典的值转换为数据框中列的值,与其各自的键 - 索引值相匹配。所以输出将是这样的:
A B C D
1a 1 5 2 0.5
2a 2 4 4 0.75
3a 3 3 1 0.625
4a 4 2 2 0.55
5a 5 1 4 1
新列'D'包含字典'B'中的所有值,数据帧中的每个索引值都与字典中的对应键值匹配。
由于
答案 0 :(得分:4)
您可以使用dict
打包pandas.Series
,然后只需将其创建为列:
In [633]: A['D'] = pd.Series(B)
In [634]: A
Out[634]:
A B C D
1a 1 5 2 0.500
2a 2 4 4 0.750
3a 3 3 1 0.625
4a 4 2 2 0.550
5a 5 1 4 1.000