gpt4 book ai didi

python - 将具有相同 ID 的多行(具有一些非字符串值)合并到 pandas 中的一个分隔行中

转载 作者:行者123 更新时间:2023-11-28 22:16:05 27 4
gpt4 key购买 nike

我有这样一个数据集:

ID    Name
1 a
1 b
1 2
1 3
2 er
2 get
2 better
3 123
3 cold
3 warm
3 sweet
3 heat

我想将这些数据组合在一起,以便使用分隔符将具有相同“id”的数据列“name”合并在一起。像这样:

ID                      Name
1 a,b,2,3
2 er,get,better
3 123,cold,warm,sweet,heat

等等。

谁能给我提供一个 pythonic 的方式来做这件事?

最佳答案

groupby 中使用 ','.join

df.groupby('ID').Name.apply(','.join)

ID
1 a,b,c,d
2 er,get,better
3 hot,cold,warm,sweet,heat
Name: Name, dtype: object

如果您需要相同的两列,请重置索引

df.groupby('ID').Name.apply(','.join).reset_index()

ID Name
0 1 a,b,c,d
1 2 er,get,better
2 3 hot,cold,warm,sweet,heat

如果由于某种原因你有非字符串项

df.assign(Name=df.Name.astype(str)).groupby('ID').Name.apply(','.join).reset_index()

ID Name
0 1 a,b,c,d
1 2 er,get,better
2 3 hot,cold,warm,sweet,heat

关于python - 将具有相同 ID 的多行(具有一些非字符串值)合并到 pandas 中的一个分隔行中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52433293/

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