龙空技术网

数分必会python点 数据分组汇总

数据小郑 264

前言:

现时各位老铁们对“python点怎么打”都比较关心,同学们都需要分析一些“python点怎么打”的相关知识。那么小编同时在网络上收集了一些有关“python点怎么打””的相关文章,希望姐妹们能喜欢,各位老铁们一起来学习一下吧!

大家好,我是数据小郑。

本篇是数分常用数分必会python点 系列的第一篇:数据分组汇总。

系列内容,请看【数分必会python点】话题,订阅后文章更新可第一时间推送至订阅号。

数分工作者在python的工具使用上,pandas包肯定是天天都用,groupby是pandas包使用最为频繁的工具之一。本文主要介绍利用groupby 对数据进行拆分,选择,按照需求分组进行信息汇总。

标记数据拆分组

df.groupby之后生成的是分组索引标记,不是新的df,如df2g所示;它的索引标记如df2g.groups,本质上是个变量名与索引的字典。且对于describe的数据描述也存在分组。对于多重拆分,只需要df.groupby(['类型','所属省份'])即可。

df.groupby(by : 用于分组的变量名/函数axis = 0 : level = None : 相应的轴存在多重索引时,指定用于分组的级别as_index = True : 在结果中将组标签作为索引sort = True : 结果是否按照分组关键字进行排序dropna = True : 是否将NA看作普通键值用于分组,1.1版新增) # 生成的是分组索引标记,而不是新的DF

基于拆分进行筛选

#筛选出其中的一组df2group.get_group()
#筛选出最大值df2g.max()

使用agg函数进行汇总

〓基本用法

df.aggregate()名称可以直接简写为agg0.20版新增可以用axis指定汇总维度可以直接使用的汇总函数count() Number of non-null observationssize()  group sizessum()   Sum of valuesmean()  Mean of valuesmedian()    Arithmetic median of valuesmin()   Minimummax()   Maximumstd()   Unbiased standard deviationvar()   Unbiased varianceskew()  Unbiased skewness (3rd moment)kurt()  Unbiased kurtosis (4th moment)quantile()  Sample quantile (value at %)apply() Generic applycov()   Unbiased covariance (binary)corr()  Correlation (binary)

当然,agg除了引用内置函数外,还可以使用非内置函数和自定义函数。

〓特殊用法

我们发现使用agg汇聚计算后列名不是我们想要的,agg在汇总中同时指定列名和汇总函数,从而能够在一个汇总命令中得到不同的汇总结果。

其他分组办法

pd.crosstab()pandas.crosstab(index, columns, values=None, rownames=None, colnames=None, aggfunc=None,margins=False, margins_name='All', dropna=True, normalize=False)crosstab()一种特殊的pivot_table(),pivot_table()也可以实现crosstab()的功能。pivot_table(data, values=None, index=None, columns=None,aggfunc='mean', fill_value=None, margins=False, dropna=True, margins_name='All')pivot_table有四个最重要的参数index、values、columns、aggfun。

原创不易,欢迎点赞、留言、分享,支持我继续写下去

我是数据小郑,最近正在原创【数分必会python点】系列话题,欢迎订阅。订阅后,文章更新第一时间推送至订阅号,每篇文章不错过。

标签: #python点怎么打 #pythongroup #pythongroupby用法