gpt4 book ai didi

python - pandas groupby 聚合元素列表加法

转载 作者:太空狗 更新时间:2023-10-29 18:02:44 27 4
gpt4 key购买 nike

我有一个 pandas 数据框,如下所示:

X                      Y
71455 [334.0, 319.0, 298.0, 323.0]
71455 [3.0, 8.0, 13.0, 10.0]
57674 [54.0, 114.0, 124.0, 103.0]

我想执行聚合 groupby 以元素方式添加存储在 Y 列中的列表。我试过的代码:

df.groupby('X').agg({'Y' : sum})   

结果如下:

                                                   Y
X
71455 [334.0, 319.0, 298.0, 323.0, 75.0, 55.0, ...

所以它连接了列表,而不是按元素对它们求和。然而,预期的结果是:

X                      Y
71455 [337.0, 327.0, 311.0, 333.0]
57674 [54.0, 114.0, 124.0, 103.0]

我尝试了不同的方法,但无法使它按预期工作。

最佳答案

可以在分组的数据帧上使用apply来获得逐元素的加法:

df.groupby('X')['Y'].apply(lambda x: [sum(y) for y in zip(*x)])

这会产生一个 pandas 系列对象:

X
57674 [54.0, 114.0, 124.0, 103.0]
71455 [337.0, 327.0, 311.0, 333.0]

关于python - pandas groupby 聚合元素列表加法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51926668/

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