python - 如何总结客户,按性别分组,然后按月份?
问题描述
我在 Pandas 中有以下数据框,其中包含有关我的客户以及他们在我的网站上购买商品的月份的信息:
id | Month| Gender
01 | 01 | M
02 | 01 | F
03 | 02 | F
04 | 02 | F
我需要知道每个月有多少男人和女人买了东西。换句话说,我需要把我原来的数据框变成这样:
Month| Male| Female
01 | 100 |300
02 | 120 |500
03 | 170 |900
04 | 200 |1000
05 | 150 |800
我怎么能那样做?我尝试了几种不同的方法,但似乎都没有奏效。谢谢!
解决方案
pivot_table
应该在这里工作:
df.assign(count=1).pivot_table(index='Month', columns = 'Gender', values='count', aggfunc='sum', fill_value=0)
输出
Gender F M
Month
1 1 1
2 2 0
推荐阅读
- google-apps-script - Refresh live Google Finance data prior to reading value
- java - 使用 pdfcopy 创建 pdf 时返回一个空文档
- python - 如何将文本文件 (name1:hobby1 name2:hobby2) 制作成这个 (name1:hobby1, hobby2 name2:hobby1, hobby2)?
- grails - Grails:如何从视图中先前创建的对象列表中进行选择?
- android - kotlin recyclerview 数据未显示
- json - 对于 JSON 路径格式
- gatsby - Gatsby 和 Directus:从表行中获取引用的文件
- assembly - 无法将输出写入 NASM 程序集中的文件
- acumatica - 取消销售订单
- delphi - 直接在热敏打印机上打印报告