[英]How can I do Python for groupby in dataframe
I have one dataframe that includes transactions.我有一个 dataframe,其中包含交易。 I want to group data.我想对数据进行分组。
buy_date category subcategory product actual_price sell_price
1/1/2021 Cloth women shirt style A 5 4
1/1/2021 Cloth men skirt style A 7 6.5
1/1/2021 Accessories ear sky wing 2 1
2/1/2021 Automotive wheel small 21 18
2/1/2021 Automotive wheel big 34 30
1/14/2021 Accessories ring queen couple 3 3
1/17/2021 Cloth women shirt style B 7 7
1/17/2021 Cloth men skirt style A 7 6.5
4/2/2021 Cloth men skirt style A 10 9
5/2/2021 Accessories ring queen couple 3 2.5
7/2/2021 Cloth women shirt style B 16 12
7/2/2021 Automotive wheel big 40 35
2/26/2021 Accessories ring queen couple 4 4
2/26/2021 Cloth women shirt style B 9 5
2/26/2021 Cloth men skirt style A 7 9
2/28/2021 Accessories ear sky wing 2 1
1/3/2021 Automotive wheel big 38 35
1/3/2021 Accessories ring queen couple 4 4
7/3/2021 Automotive wheel big 39 37
3/31/2021 Accessories ring queen couple 4 4
I want to get the average monthly sell and the actual price per category and subcategory.我想获得每个类别和子类别的平均每月销售量和实际价格。 I've tried many approaches, but they were not working properly.我尝试了很多方法,但它们都无法正常工作。 Thanks谢谢
Just do:做就是了:
>>> df.groupby(['category', 'subcategory']).mean()
actual_price sell_price
category subcategory
Accessories ear 2.00 1.00
ring 3.60 3.50
Automotive wheel 34.40 31.00
Cloth men 7.75 7.75
women 9.25 7.00
>>>
You can find month
then groupby
with three desired columns.您可以找到month
,然后使用三个所需的列进行groupby
。
Try this:尝试这个:
df['month'] = pd.to_datetime(df["buyDate"]).dt.month
df.groupby(['month','category', 'subcategory']).mean()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.