我试图比较python中周末和工作日的平均销售额。
假设我有一个数据集
Order Date Units Sold day_week
2017-07-01 100 Sat
2017-07-02 100 Sun
2017-07-03 90 Mon
2017-07-04 90 Tue
2017-07-05 90 Wed
2017-07-06 90 Thu
2017-07-07 90 Fri
2017-07-08 80 Sat
2017-07-09 80 Sun
2017-07-10 100 Mon
2017-07-11 100 Tue
2017-07-12 100 Wed
2017-07-13 100 Thu
2017-07-14 100 Fri
我想比较(周末和太阳的平均销售额)与(工作日的平均销售额),但个别喜欢(第一和第二,3,4,5,6,7销售)和(8,9与10, 11,12,13,14)
所以在第1周,周末平均销售额(100)将超过工作日平均销售额(90),在第2周,周末平均销售额(80)将低于工作日平均销售额(100)
好的,这里假设你的数据是DataFrame
格式,但日期/时间很简单str
(即不是datetime
):
import pandas as pd
# setting up part of your dataset
df = pd.DataFrame.from_dict({
'date':['2017-07-01','2017-07-02','2017-07-03','2017-07-04'],
'units_sold': [100,100,90,90],
'day_week': ['Sat','Sun','Mon','Tue']}
)
# defining a new column to help us, grouping by it and then summing:
df['is_weekend']=df['day_week'].apply(lambda x: x in {'Sat','Sun'})
df.groupby('is_weekend').mean()
此外,在将来,编写生成数据集(或其中一小部分)的代码是一种很好的行为,否则读者必须自己完成。