gpt4 book ai didi

python Pandas : sum with string in two dataframe

转载 作者:行者123 更新时间:2023-12-02 16:37:41 24 4
gpt4 key购买 nike

我想知道怎么做:

enter image description here

我想在 df2 中为 df2 列“agence”中的每个字符串列表创建“总和”,其中包含 df1 中所有“值”整数的总和。

我的实际代理列表有 300 多个,所以我正在寻找不需要为每个代理名称手动重复的内容。

编辑:抱歉,我想添加图片来说明我的问题,因为我很难对其进行措辞,但我还应该在下面添加可重现的示例数据框:

import pandas as pd
df1 = pd.DataFrame({'agence': ['a', 'a, b', 'c, d, a', 'd', 'e, a', 'b, d'],
'value': [1, 4, 2, 5, 2, 10]})
df2 = pd.DataFrame({'agence': ['a', 'b', 'c', 'd', 'e',]})

最佳答案

使用str.split()explode() 展开数据。然后使用 groupby()sum() 聚合重新分组:

df2 = (df1.assign(agence=df1['agence'].str.split(', '))
.explode('agence')
.groupby('agence')
.sum()
.reset_index()
.rename(columns=({'value': 'total sum'})))

df2
agence total sum
0 a 9
1 b 14
2 c 2
3 d 17
4 e 2

关于 python Pandas : sum with string in two dataframe,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62343337/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com