Pandas 实现分组计数且不计重复
在对dataframe进行分析的时候会遇到需要分组计数,计数的column中属性有重复,但又需要仅对不重复的项计数(即重复N次出现的项只计1次)。
函数如下:
dataframe.groupby([‘分组的列名']).需要计数的列名.nunique()
举例:
数组“data”如下:
StoreID | Sales | SalesDate | Channel |
---|---|---|---|
A | 100 | 2018/1/1 | 01 |
A | 90 | 2018/1/1 | 02 |
A | 110 | 2018/1/2 | 01 |
B | 82.2 | 2018/1/1 | 01 |
B | 90 | 2018/1/2 | 02 |
如果要按StoreID来统计每一家店的营业日期数(可以通过不计重复的count “SalesDate”来完成)
代码如下:
data.groupby(['StoreID']).SalesDate.nunique()
补充:pandas 统计分组内不重复计数
在数据分析中的数据处理过程中,经常需要对数据进行分组计数,看下下面这组数据
数据中name 为C 的有三行,其中有2个code是重复的
目标:
按name 分组,统计每组中code的不重复数量
df.groupby('name')['code'].nunique() # 以name 分组后,统计code的不重复数目
结果如下:
排序
df.groupby('name')['code'].nunique().sort_values(ascending=False) # 以name 分组后,统计code的不重复数目
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。
相关文章
tensorflow实现打印ckpt模型保存下的变量名称及变量值
今天小编就为大家分享一篇tensorflow实现打印ckpt模型保存下的变量名称及变量值,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2020-01-01python 通过SSHTunnelForwarder隧道连接redis的方法
今天小编就为大家分享一篇python 通过SSHTunnelForwarder隧道连接redis的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2019-02-02Python用matplotlib库画图中文和负号显示为方框的问题解决
matplotlib中画图的时候会遇到负号显示为方框的问题,下面这篇文章主要给大家介绍了关于Python用matplotlib库画图中文和负号显示为方框的问题解决,文中通过实例代码介绍的非常详细,需要的朋友可以参考下2022-07-07
最新评论