Python数据分析之dataframe的groupby

浏览: 1018

大家都知道数据库有groupby函数,今天给大家讲讲dataframe的groupby函数。

groupby函数

还是以上文的数据为例子,进行讲解,首先读入数据,通过groupby聚合数据。(该数据为简书it互联网一段时间的文章收录信息)

import pandas as pd
import pymysql
conn = pymysql.connect(host='localhost', user='root', passwd='123456', db='test', port=3306, charset='utf8')
jianshu = pd.read_sql('select * from jianshu1',conn)
group_user = jianshu.groupby('user')
group_user.groups


可以看出返回的有用户id和所在的索引位置以及数据类型。通过下面代码计算有多少用户。

len(group_user.groups)
#result 543

通过size方法进行统计显示:

size_user = group_user.size()
size_user


进行排序,取前十的用户。

sort_user = size_user.sort_values(ascending=False)
sort_user[0:10]

highcharts绘图

import charts
series = [{'name': 'Apple','data': [10],'type': 'column'},{'name': 'Android','data': [5],'type': 'column'},{'name': 'Other','data': [5],'type': 'column'}]
charts.plot(series,show='inline')


我们需要把数据整合为highcharts能识别的数据结构,然后进行绘制。

series1 = []
for i in a.index:
data = {
'name':i,
'data':[a[i]],
'type':'column'
}
series1.append(data)
charts.plot(series1,options=dict(title=dict(text='投稿前十用户')))


这里的a是前十的用户数据,也就是sort_user[0:10]。

推荐 0
本文由 罗罗攀 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

0 个评论

要回复文章请先登录注册