我试图通过monthtly_purchases
和region
进行分组,以获得客户数量和每月支出总额,但是,我得到以下错误:
主数据帧:
customer_id monthly_spending month monthtly_purchases region
32324 342 Feb-2019 5 A
34345 293 Feb-2019 5 A
45453 212 Feb-2019 3 A
34343 453 Feb-2019 3 A
53533 112 Feb-2019 5 B
12334 511 Feb-2019 5 B
99934 123 Feb-2019 3 B
21213 534 Feb-2019 3 B
32324 143 March-2019 5 A
34345 453 March-2019 5 A
45453 234 March-2019 3 A
34343 432 March-2019 3 A
53533 124 March-2019 5 B
12334 453 March-2019 5 B
99934 224 March-2019 3 B
21213 634 March-2019 3 B
输出数据帧:
monthly_purchases region monthly_spending count_customers month
5 A 635 2 Feb-2019
3 A 665 2 Feb-2019
5 B 623 2 Feb-2019
3 B 657 2 Feb-2019
5 A 596 2 Feb-2019
3 A 666 2 Feb-2019
5 B 556 2 Feb-2019
3 B 858 2 Feb-2019
这是我迄今为止尝试过的,但我得到以下错误:
d = {'customer_id': ['count'], 'monthly_spending': ['sum']}
agg_df = df.groupby('monthtly_purchases', 'region').agg(d)
agg_df
Error msg: No numeric types to aggregate
当使用超过2列或更多列的group by时,请记住将列名放入列表中:
返回:
按照注释中的要求,明确多索引(通过创建新索引将其拆分为列):
返回:
包括评论中要求的月份:
返回:
列的顺序不同,但您可以使用以下代码获得它
相关问题 更多 >
编程相关推荐