numpy 如何在python dataframe中按表中的日期重新组织数据[重复]

t9aqgxwy  于 2023-03-23  发布在  Python
关注(0)|答案(1)|浏览(132)

此问题在此处已有答案

Pandas Pivot Time-series by year(2个答案)
昨天关门了。
我试图用日期索引重组数据框架的数据。这里我展示了数据框架:

H04_PEDRO_MARIN  A13_G_MENOR_POS  E01_TRANCO_BEAS      SUMA
FECHA                                                                  
2017-03-08         0.391776         0.267161         0.080061  0.347222
2017-03-09         0.209277         0.184382         0.076379  0.260761
2017-03-10         0.323770         0.154496         0.077601  0.232097
2017-03-11         0.280073         0.100394         0.078313  0.178707
2017-03-12         0.144533         0.030172         0.080804  0.110976
      ...           ...              ...              ...       ...
2022-11-24         0.000000         0.085510         0.026250  0.111760
2022-11-25         0.000000         0.078270         0.029989  0.108259
2022-11-26         0.000000         0.051454         0.025888  0.077342
2022-11-27         0.000000         0.046259         0.025414  0.071673
2022-11-28         0.000000         0.067865         0.025597  0.093462

[2050 rows x 4 columns]

我正在尝试编写一个脚本,按月份和年份重新组织数据。这是我希望得到的结果的一个示例(但我是手动完成的):

7y4bm7vi

7y4bm7vi1#

使用DataFrame.pivot_table和辅助列,用于具有聚合函数的月份和日期,例如sum

df1 = (df.assign(m = df.index.month, d = df.index.day)
         .pivot_table(index='m', columns='d', values='SUMA', aggfunc='sum'))

然后,如果需要重命名索引:

months = ['Enero','Febrero','Marzo','Abril',...,'Diciembre']

df1 = df1.rename(dict(enumerate(months, 1)))

相关问题