python - 时间序列按周分组 python

标签 python pandas

我想在 python 中按周聚合此表:

    Date       x    y    z
   01/01/2016   0   0   1015
   02/01/2016   0   0   1015
   03/01/2016   0   0   1015
   04/01/2016   5   0   1020
   05/01/2016   6   1   1016
   06/01/2016   9   3   1020
   07/01/2016   4   0   1025
   08/01/2016   2   5   1008

谢谢。

最佳答案

首先通过 to_datetime 将列转换为日期时间然后通过 sumweekofyear 进行聚合:

df['Date'] = pd.to_datetime(df['Date'], format='%d/%m/%Y')
print (df)
        Date  x  y     z
0 2016-01-01  0  0  1015
1 2016-01-02  0  0  1015
2 2016-01-03  0  0  1015
3 2016-01-04  5  0  1020
4 2016-01-05  6  1  1016
5 2016-01-06  9  3  1020
6 2016-01-07  4  0  1025
7 2016-01-08  2  5  1008

df1 = df.groupby(df['Date'].dt.weekofyear).sum()
print (df1)
       x  y     z
Date             
1     26  9  5089
53     0  0  3045

或者dayofweek :

df2 = df.groupby(df['Date'].dt.dayofweek).sum()
print (df2)
      x  y     z
Date            
0     5  0  1020
1     6  1  1016
2     9  3  1020
3     4  0  1025
4     2  5  2023
5     0  0  1015
6     0  0  1015

关于python - 时间序列按周分组 python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53833448/

相关文章:

python - 迭代数据帧列表并删除特定行

python - 有没有办法在 Python 中运行 selenium 时隐藏浏览器?

python - 为什么 Python 3.4 randrange 不想工作?

python - Pandas 在循环中乘以多列

Python Pandas - 将 csv 文件转换为特定格式

python - 计算在 Python 中分组的唯一值

python - 如何减去两个不同数据帧之间的行并替换原始值?

python - 在 Windows 上的 Python 2.x 中从命令行参数读取 Unicode 字符

python - 如何解决TypeError : on_delete must be callable on Django models?

python - 将 geojson url 转换为 pandas(解析)