这些 pandas 按语句分组是做什么的? [英] what does these pandas group by statement does?
本文介绍了这些 pandas 按语句分组是做什么的?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在关注有关如何构建推荐系统的教程,并发现了这条线
I am following a tutorial on how to build a recommender system and came upon this line
users_interactions_count_df = interactions_df.groupby(['personId', 'contentId']).size().groupby('personId').size()
我相信第一个groupby首先根据personID对数据进行分组,然后contentID显示其大小,但并不能真正理解下一个groupby会做什么?
The first groupby I believe groups the data first according to personID ,then contentID then shows its size but dont really understand what the next groupby will do ?
来源:在python中构建推荐系统 >
推荐答案
检查此示例数据:
interactions_df = pd.DataFrame({
'personId':list('XXYYWZWZ'),
'contentId':list('aaaabbaa')
})
print (interactions_df)
personId contentId
0 X a
1 X a
2 Y a
3 Y a
4 W b
5 Z b
6 W a
7 Z a
首先获取每列 personId
和 contentId
的计数:
First get count per columns personId
and contentId
:
print (interactions_df.groupby(['personId', 'contentId']).size())
personId contentId
W a 1
b 1
X a 2
Y a 2
Z a 1
b 1
dtype: int64
然后按照由 personId
列创建的 MultiIndex
的第一级进行计数:
And then count by first level of MultiIndex
created by personId
column:
print (interactions_df.groupby(['personId', 'contentId']).size().groupby('personId').size())
personId
W 2
X 1
Y 1
Z 2
dtype: int64
这篇关于这些 pandas 按语句分组是做什么的?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文