我想通过’label’和’month’分组来计算每个月和每个标签的销售数量.
我正在尝试’groupby和apply’方法来实现这一目标,但不确定如何计算每个标签的月份.比方说,对于标签值AFFLELOU(DOS),我有7个月的两个值.所以,我应该将销售数量相加并除以2.
在第9个月和第10个月,我只有一个值,所以计数为1,它将除去销售数量.
我编写了下面的代码,但它不会将count作为函数并且返回计数未定义错误.
t1.groupby(['label', 'month']).apply(lambda x: x['Quantity sold']
.sum()/count('month'))
有人能告诉我如何获得每个标签每月的计数值吗?
提前致谢.
解决方法:
你可以使用agg(‘mean’)代替求和,计数和除法:
t1.groupby(['label', 'month'])['Quantity sold'].agg('mean')
或者,如果您确实希望保留金额和计数,请使用:
t1.groupby(['label', 'month'])['Quantity sold'].agg(['sum', 'count', 'mean'])
例如,
import numpy as np
import pandas as pd
t1 = pd.DataFrame(np.random.randint(4, size=(20,3)), columns=[&#