gpt4 book ai didi

python - 按列组合某些行中的值(在 pandas 中)

转载 作者:行者123 更新时间:2023-11-30 22:45:42 25 4
gpt4 key购买 nike

我仍然没有找到适合我在 pandas 中需要做的事情的工具。它可能需要 groupby(),但我还无法在文档或网络上找到 pythonic 方式(或任何其他方式)。

我有一个包含类似结构数据的表(30-50 列):

ID   name  Town     s1       s2       s3       s4

21 Joe Bonn rd fd NaN aa
21 Joe Bonn NaN hg kk NaN
22 Ann Oslo jg hg zt uz
29 Mya Rome rd fd NaN aa

我想组合具有相同 ID(即索引)的行,组合行中的值而不重复,形成字符串值的并集。

所以结果是:

21   Joe   Bonn     rd       fd,hg    kk       aa
22 Ann Oslo jg hg zt uz
29 Mya Rome rd fd NaN aa

df.groupby(df.index).sum() 是一个猜测,但它只是在每个索引旁边给出一个 NaN。

最佳答案

可以尝试这样的操作,您需要在使用 join 函数之前删除缺失的值:

df.groupby(["ID", "name", "Town"], as_index=False).agg(lambda col: ','.join(col.dropna()))

# ID name Town s1 s2 s3 s4
#0 21 Joe Bonn rd fd,hg kk aa
#1 22 Ann Oslo jg hg zt uz
#2 29 Mya Rome rd fd aa

关于python - 按列组合某些行中的值(在 pandas 中),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41128090/

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