Python数据分析之groupby语法糖

对于dataframe的groupby聚合函数来说,我们适当了解下语法糖,会对数据分析起到事半功倍的效果。

对分组进行迭代

首先看下各字段的类型

import numpy as np
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)
jianshu.dtypes

可以看出,view这些字段是整数类型的数据,但这里是object数据,所以我们需要进行数据类型的修改,以view为例。

jianshu['view'] = jianshu['view'].astype('int64')
jianshu.dtypes

把user列作为索引。

jianshu.set_index('user',inplace=True)
jianshu

通过分组后的数据类型为groupby对象,可进行迭代。

jianshu.groupby(jianshu.index)
for name,group in jianshu.groupby(jianshu.index):
    print(name,group)

语法糖一:选取一个或多个列

jianshu.groupby(jianshu.index)[['view']].sum()

语法糖二:数据聚合
通过aggregate或者agg方法

jianshu.groupby(jianshu.index)[['view']].agg(['mean','sum'])
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容