简体   繁体   English

计算唯一元素并汇总pandas groupby操作中的值

[英]Count unique elements and sum up values in a pandas groupby operation

I have a table with the follows data: 我有一个包含以下数据的表:

day         concept    click    item_id 
2015-05-01    A          6     s4P~Hzs1w5R12Dpyn2IK
              B          6     s4P~Hzs1w5R12Dpyn2IK
              C          1     DOwfmfFvdEIZ1IdXqTiu
              D          1     wPaYuIh~t8y7rU3HP43N
              D          7     Ya_M~2N6eX0kem8IgdSp

And I want obtain the count of distint item_id and sum click for all item_id daily , for example: 我想要获取distint item_id的计数,并每天获取所有item_id的总点击次数,例如:

day         concept       click    count_item_id    
2015-05-01    A          6        1
              B          6        1
              C          1        1
              D          8        2

I work with Python and Pandas library 我使用Python和Pandas库

Use a groupby followed by an agg : 使用groupby后跟agg

df.groupby(['day', 'concept']).agg({'click' : 'sum', 'item_id' : 'count'})

                    item_id  click
day        concept                
2015-05-01 A              1      6
           B              1      6
           C              1      1
           D              2      8

请检查这是否是您想要的:

df[['day', 'concept']].groupby(['click', 'item_id']).agg(['sum', 'count'])

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM