我在pandas数据框中有一列字典:
sr = pd.Series([{'sugar': 1, 'pepper': 2},{'salt': 2, 'sugar': 2},{'pepper': 3, 'sugar': 4}])
df = pd.DataFrame({'column1': sr})
df
column1
0 {'sugar': 1, 'pepper': 2}
1 {'salt': 2, 'sugar': 2}
2 {'pepper': 3, 'sugar': 4}
如何将列'column1'中的所有字典合并到一个字典中,其中值是其字典中相应值的总和?
这个问题和这个问题很相似:link
然而,我没有得到计数器方法来求和。
预期输出:
{'sugar': 7, 'pepper': 5, 'salt': 2}
我尝试了一些lambda函数来迭代所有行,并将每个键分解为列,然后求和。然而,这并不起作用,因为实际的df相当大。
3条答案
按热度按时间f87krz0w1#
pd.DataFrame.from_records
:dl5txlt92#
这里有一个可能的选择:
输出:
gupuwyp23#