我有一个熊猫DataFrame和一个Series。他们的样本是:
b = [
{'key': 'c', 'value': 10},
{'key': 'a', 'value': 5},
{'key': 'b', 'value': 3},
{'key': 'd', 'value': 99}
]
df = pd.DataFrame(b)
a = {'a': 1, 'b': 2, 'c': 3}
series = pd.Series(a)
如何添加的值series
,在value
列df
,其中的指数series
比赛key
的列df
?d
不在的记事本键series
不会更改。对于上面的示例,我想得出以下结论:
result_data = [
{'key': 'c', 'value': 13},
{'key': 'a', 'value': 6},
{'key': 'b', 'value': 5},
{'key': 'd', 'value': 99}
]
result_df = pd.DataFrame(result_data)
您可以简单地使用a
as查找字典:
df['sum'] = df.apply(lambda x: x['value'] + a.get(x['key'], 0), axis=1)
print(df[['key', 'sum']])
key sum
0 c 13
1 a 6
2 b 5
3 d 99
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句