首页 > 解决方案 > 如何总结客户,按性别分组,然后按月份?

问题描述

我在 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

我怎么能那样做?我尝试了几种不同的方法,但似乎都没有奏效。谢谢!

标签: pythonpandasdataframe

解决方案


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

推荐阅读