python - 具有 2 个索引的 Pandas GroupBy:希望使用第二个索引的百分比作为聚合值,而不是 .count()
问题描述
我在 Pandas 中使用两个索引进行 GroupBy,见下文:
它目前按“计数”分组,但我希望将值改为每月的百分比。这样我就可以更好地比较每个月,而不是比较每个月的计数,这是不公平的,因为每个月的条目数量不同。
即这是图表当前的样子,而我希望条形图显示每个月的百分比,而不是计数:
我不知道我怎么能做到这一点:也许是一个 lambda 函数?
谢谢!
解决方案
你可以做
int_group = (interactions.groupby('MM-YYYY')['Description']
.value_counts(normalize=True)
.unstack('Description')
)
int_group.plot.bar()
推荐阅读
- java - 一个线程所做的更改不会反映在另一个线程中
- android - Glide 不接受 GifDrawable 作为目标参数
- django - 为什么可浏览 API 登录后出现 Django Rest Framework 404?
- php - mysql比较连续值
- jpa - 空列表时的表达式“in”(spring data jpa规范)
- vue.js - 具有动态名称的 Vue.js v-for
- visual-studio - Visual Studio 中缺少分析服务
- spring - Spring Boot 控制器处理 Java 未来
- r - ggpubr/ggbarplot 中的错误栏突然合并(没有代码更改),我怎样才能再次将它们分开?
- java - Java读取文件名并按升序存储