目前我正在处理来自 FRED 的一些数据,这些数据是我使用 quandl 提取的。
我收到的数据在一个数据帧中。

它目前像这样返回

DATE    VALUE
1966-01-01  31.880
1966-02-01  32.080
1966-03-01  32.180
1966-04-01  32.280
... ...
2013-08-01  233.323
2013-09-01  233.632
2013-10-01  233.718
2013-11-01  234.121

但我想重新组织以显示为:
        Jan     Feb     Mar     Apr...
1966    31.880  32.080  32.180  32.280
...
2013    233.323 233.632 233.718 234.121

编辑:我认为这会很有用。
DatetimeIndex(['1966-01-01', '1966-02-01', '1966-03-01', '1966-04-01',
               '1966-05-01', '1966-06-01', '1966-07-01', '1966-08-01',
               '1966-09-01', '1966-10-01',
               ...
               '2015-04-01', '2015-05-01', '2015-06-01', '2015-07-01',
               '2015-08-01', '2015-09-01', '2015-10-01', '2015-11-01',
               '2015-12-01', '2016-01-01'],
              dtype='datetime64[ns]', name=u'DATE', length=601, freq=None)
Index([u'VALUE'], dtype='object')

最佳答案

您可以使用 pandas.crosstab :

df.DATE = pd.to_datetime(df.DATE)    # optional if the DATE column is already datetime type

pd.crosstab(df.DATE.dt.year,
            df.DATE.dt.strftime("%b"),
            df.VALUE,
            aggfunc="sum",
            rownames=["Year"],
            colnames=["Month"])

python -  Pandas 数据框 : Change Index to Year and Columns to Month-LMLPHP

更新:如果您将日期作为索引:
pd.crosstab(df.index.year,
            df.index.strftime("%b"),
            df.VALUE,
            aggfunc="sum",
            rownames=["Year"],
            colnames=["Month"])

关于python - Pandas 数据框 : Change Index to Year and Columns to Month,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43377919/

10-12 16:54
查看更多