在对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()
在数据分析中的数据处理过程中,经常需要对数据进行分组计数,看下下面这组数据
数据中name 为C 的有三行,其中有2个code是重复的
目标:
按name 分组,统计每组中code的不重复数量
df.groupby('name')['code'].nunique()
# 以name 分组后,统计code的不重复数目
结果如下:
排序
df.groupby('name')['code'].nunique().sort_values(ascending=False)
# 以name 分组后,统计code的不重复数目
以上为个人经验,希望能给大家一个参考,也希望大家多多支持华域联盟。如有错误或未考虑完全的地方,望不吝赐教。
您可能感兴趣的文章:
- 利用pandas按日期做分组运算的操作
- pandas 实现某一列分组,其他列合并成list
- pandas 实现分组后取第N行
- pandas分组排序 如何获取第二大的数据
- pandas group分组与agg聚合的实例
- pandas groupby分组对象的组内排序解决方案
声明:本站(华域联盟www.cnhackhy.com)所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

评论(0)