我有一个包含很多信息的数据框,包括cols的“已售出物品”和“类别” 我如何才能最好地获得最畅销的商品(每个时间间隔(天/周/月))以及最畅销的类别(每个时间间隔(天/周/月)) 我当然想画出结果
谢谢你的帮助
对不起,我的第一篇文章不好,我没有包括我正在尝试的代码
我试图自己解决它,并提出了以下建议
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
df = pd.DataFrame({'Category': ['Beverage', 'Beverage', 'Asian Cuisines', 'Asian Cuisines',
'International cuisines','International cuisines','International cuisines',
'International cuisines','Beverage', 'Beverage', 'Asian Cuisines', 'Asian Cuisines',
'International cuisines','International cuisines','International cuisines',
'International cuisines'],
'Item': ['Can coke', 'Pitcher Ice Tea', 'Beef Kare Kare','Chicken Curry','Mahi Mahi & Chips',
'Baby Back Ribs','Chicken Cordon Blue','Chicken Cordon Blue',
'Can coke', 'Pitcher Ice Tea', 'Beef Kare Kare','Chicken Curry','Mahi Mahi & Chips',
'Baby Back Ribs','Chicken Cordon Blue','Chicken Cordon Blue'],
'Net sales':np.random.randint(100,500,(16)),
'Date':np.random.choice( pd.date_range('1/1/2021', periods=30,
freq='D'), 16, replace=False)})
# Grouping products by sales
prod_sales = pd.DataFrame(df.groupby('Item').sum()['Net sales'])
# Sorting the dataframe in descending order
prod_sales.sort_values(by=['Net sales'], inplace=True, ascending=False)
dfnew=df.groupby('Item').resample('W-MON', label='left',closed='left'
, on='Date').sum().reset_index().sort_values(by='Date')
fig, ax = plt.subplots(figsize=(20,10))
for section, group in dfnew.groupby('Item'):
if any(item in section for item in prod_sales[:10].index):
group.plot(x='Date', y='Net sales', ax=ax, label=section)
目前没有回答
相关问题 更多 >
编程相关推荐