gpt4 book ai didi

python - Pandas 按任何给定列中的特定值分组

转载 作者:行者123 更新时间:2023-12-03 16:32:40 31 4
gpt4 key购买 nike

鉴于 Pandas 数据框如下:

   Partner1 Partner2    Interactions
0 Ann Alice 1
1 Alice Kate 8
2 Kate Tony 9
3 Tony Ann 2
我如何按特定合作伙伴分组,比如说找到安的互动总数?
就像是
gb = df.groupby(['Partner1'] or ['Partner2']).agg({'Interactions': 'sum'})
并得到答案:
Partner Interactions
Ann 3
Alice 9
Kate 17
Tony 11

最佳答案

您可以使用 melt 连同 groupby .第一 melt :

df = pd.melt(df, id_vars='Interactions', value_vars=['Partner1', 'Partner2'], value_name='Partner')
这将给出:
   Interactions   variable  Partner
0 1 Partner1 Ann
1 8 Partner1 Alice
2 9 Partner1 Kate
3 2 Partner1 Tony
4 1 Partner2 Alice
5 8 Partner2 Kate
6 9 Partner2 Tony
7 2 Partner2 Ann
现在,分组 Partner和总和:
df.groupby('Partner')[['Interactions']].sum()
结果:
Partner  Interactions
Alice 9
Ann 3
Kate 17
Tony 11

关于python - Pandas 按任何给定列中的特定值分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63844487/

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