我有一个pandas数据框,其中包含一个时间序列(作为索引),格式为YYYY-MM-d d(“到达日期”),我想按每个工作日(星期一到星期日)分组,以便计算其他列的平均值、中位数、性病等。我最后应该只有七行,到目前为止我只知道如何按周分组,每周一次汇总。
# Reading the data
df_data = pd.read_csv('data.csv', delimiter=',')
# Providing the correct format for the data
df_data = pd.to_datetime(df_data['arrival_date'], format='%Y%m%d')
# Converting the time series column to index
df_data.index = pd.to_datetime(df_data['arrival_date'], unit='d')
# Grouping by week (= ~52 rows per year)
week_df = df_data.resample('W').mean()
有没有一个简单的方法来实现我在熊猫方面的目标?我想每隔7个元素选择一个,然后对结果数组执行操作,但这似乎不必要复杂。
数据帧的头部如下所示
arrival_date price 1 price_2 price_3 price_4
2 20170816 75.945298 1309.715056 71.510215 22.721958
3 20170817 68.803269 1498.639663 64.675232 22.759137
4 20170818 73.497144 1285.122022 65.620260 24.381532
5 20170819 78.556828 1377.318509 74.028607 26.882429
6 20170820 57.092189 1239.530625 51.942213 22.056378
7 20170821 76.278975 1493.385548 74.801641 27.471604
8 20170822 79.006604 1241.603185 75.360606 28.250994
9 20170823 76.097351 1243.586084 73.459963 24.500618
10 20170824 64.860259 1231.325899 63.205554 25.015120
11 20170825 70.407325 975.091107 64.180692 27.177654
12 20170826 87.742284 1351.306100 79.049023 27.860549
13 20170827 58.014005 1208.424489 51.963388 21.049374
14 20170828 65.774114 1289.341335 59.922912 24.481232
目前没有回答
相关问题 更多 >
编程相关推荐