pandas中 groupby分组详解 1

引言

  • 在一个使用 pandas 做数据分析的项目过程中,再次深刻理解了一下 pandas 中使用 groupby 进行分组的一些细节问题,以及对想要做的操作如何实现,在此记录;
    • 问题 1:groupby 分组查看分组结果,以及重设分组列列名
    • 问题 2:如何获取分组后的值和分组条件的值(比如有一周内用户访问页面的记录,我们需要拿到用户周几最活跃呢?最活跃的时间段是什么时候?判断最活跃的 count 次数如何获取呢?)
    • 注:中间包含一些中间函数的用法,仅供参考;

问题 1:

延伸 1:关于count 和 size 的区别

  • 一般来说分组后结果都会接一个聚合函数,如 count,sum,agg 等,但是意外发现了还有 size,特此记录 size 和 count 的区别
  • 总结:size计数时包含NaN值,而count不包含NaN值
    image.png
    image.png
延伸 1.1 reset_index()函数和 as_index 参数的作用
  • 个人理解groupby 内参数 as_index 1可以直接把结果转换成 DF,2就是分组后的重命名(使用参数重命名可以看测试结果,个人感觉不如 reset_index 看着直接)
    • 对一个字段分组,剩余俩字段 count 结果也不同(这个是个人的一个认知错误一直以为结果是不参与分组的字段分组后的值是相同的,这只是工作时候使用数据的问题)
      image.png
      image.png

延伸 2:如何查看 groupby 分组结果

  • pandas 中 groupby 后结果不是 df 无法直接查看,可以通过循环遍历打印,groups,get_group来查看,如下所示:
    • 可以看出返回的内容是由若干个
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

矮人三等

秀儿,是你吗秀儿?

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值