gpt4 book ai didi

python - 删除 da 的同一单元格中的重复值和计数值

转载 作者:行者123 更新时间:2023-11-28 20:55:12 26 4
gpt4 key购买 nike

我有一个示例数据框,其中 a 列包含如下重复值:

        a
0 1089, 1089, 1089
1 10A3, 10A3
2 10A3, 10A4, 10A4
3 TEL, TV
4 EZ, EZ
5 ABC Co., ABC Co.

我想删除重复项并计算每个单元格的值:

      a               count
0 1089 1
1 10A3 1
2 10A3, 10A4 2
3 TEL, TV 2
4 EZ 1
5 ABC Co. 1

最佳答案

使用str.get_dummies并对 axis=1

求和
df['count'] = df.a.str.get_dummies(sep=', ').sum(1)

要删除重复项,请使用 explode

s = df.assign(a=df.a.str.split(', ')).explode('a').drop_duplicates()

         a  count
0 1089 1
1 10A3 1
2 10A3 2
2 10A4 2
3 TEL 2
3 TV 2
4 EZ 1
5 ABC Co. 1

如果你真的需要在同一行中全部...

s.groupby(s.index).agg({'a': ', '.join, 'count': 'first'})

a count
0 1089 1
1 10A3 1
2 10A3, 10A4 2
3 TEL, TV 2
4 EZ 1
5 ABC Co. 1

或者简单地使用@WeNYoBen 巧妙的解决方案;)

s=df.a.str.get_dummies(sep=', ')
df['a']=s.dot(s.columns+',').str[:-1]
df['count']=s.sum(1)

关于python - 删除 da 的同一单元格中的重复值和计数值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57483119/

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