python - 将一年中的几周分开并计算数据框中的平均值

标签 python pandas week-number

我有一个全年价格每小时间隔的数据框,如下所示:

                      DE     FR     NL     CH     BE     AT  peak  offpeak
2015-12-14 00:00:00  30.93  36.56  32.44  45.53  32.44  28.50     0        1
2015-12-14 01:00:00  31.49  31.49  31.49  42.12  31.49  26.65     0        1
2015-12-14 02:00:00  29.50  29.50  29.50  41.24  29.50  27.00     0        1
2015-12-14 03:00:00  27.84  27.84  27.84  40.29  27.84  26.75     0        1
2015-12-14 04:00:00  27.45  27.45  27.45  37.72  27.45  26.00     0        1
2015-12-14 05:00:00  29.65  29.65  29.65  43.44  29.65  29.37     0        1
2015-12-14 06:00:00  41.26  41.26  41.26  54.99  41.26  41.30     0        1
2015-12-14 07:00:00  53.46  53.46  53.46  66.89  53.46  53.43     0        1
2015-12-14 08:00:00  56.70  56.70  56.70  68.90  56.70  57.30     1        0
2015-12-14 09:00:00  51.50  60.47  51.39  68.95  59.03  54.21     1        0

...                    ...    ...    ...    ...    ...    ...   ...      ...
2016-12-14 20:00:00  67.54  71.20  67.47  65.99  70.38  53.88     1        0
2016-12-14 21:00:00  47.94  64.47  47.92  60.69  60.77  49.14     0        1
2016-12-14 22:00:00  41.71  63.65  39.57  59.97  59.49  40.00     0        1
2016-12-14 23:00:00  35.57  62.45  33.08  57.38  57.53  35.66     0        1

我希望能够将一年中的每一周分开,并将 DE、FR、NL、CH、BE、AT 各列每周的平均值相加。

如果有人可以帮忙解决这个问题。那就太好了!

最佳答案

给定全年每小时的假数据集:

cols = ['DE', 'FR', 'NL', 'CH', 'BE', 'AT']
df = pd.DataFrame(np.random.random((8760,len(cols))),
                  index=pd.date_range('2015-01-01', freq='H',periods=8760),
                  columns=cols)

您可以使用DataFrame.resample并对它应用均值函数:

df.resample('W').mean().sum()

如果您希望能够指定一周的开始日期,请查看下面的锚定偏移。 WW-SUN 相同,周一可以使用 W-MON 等。

文档:

关于python - 将一年中的几周分开并计算数据框中的平均值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41126036/

相关文章:

c# - 获取月份的第几周 C#

python - 如何将单个 pandas.DataFrame 行拆分为多个由空格分隔的列? Python

Python,如何合并2个pandas DataFrame

python - 如何根据 Spark Scala 中的列 dtypes 返回 DataFrame 列的子集

mysql - 如何从 MySQL 中的日期获取当年的当前周数?

sql - 将周日期部分编号转换为周内的日期(...的一周)

Python 正则表达式与换行符匹配

python - 正则表达式中的 anchor

python - argparse:当存在子解析器时如何分隔未知(和可选)args。(子解析器也是可选的)

python - 设置分析: create pandas series with intersections as index and values as counts