Pandas 聚合求和,聚合求均值

最近參加一個比賽,需要統計一些數據,使用了pandas。數據樣例如下圖所示:

user_id
industry
click_times
0 1 2
0 1 1
0 2 2
1 1 2
1 2 6

這樣的數據記錄一共有3000w+,如果在沒使用pandas的相關的函數的時候,採用直接遍歷計算等方式,程序跑了三天沒有出結果。

想統計的數據:

統計每一個用戶在每一種industry上點擊次數的總和,統計結果樣式如下圖:

user_id
industry
click_sum
0 1 3
0 2 2
1 1 2
1 2 6

 對第一行統計結果稍微作解釋,我們從原數據中可以看出,前兩行都是 user_id =0 且 industry =1 ,所以總點擊次數等於 2+1 =3.

具體的做法:

result1= result.groupby(['user_id', 'industry'])['click_times'].sum().reset_index(name="click_sum") 

result是原始數據讀取的Dataframe

result1則是統計結果

注:如果是想聚合之後求某列的平均值,則使用:

result1= result.groupby(['user_id', 'industry'])['click_times'].mean().reset_index(name="click_sum")

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章