所以我有一个数据框(df),其中包含每月时间序列(月末)的日期数据。它看起来像这样:
Date Data
2010-01-31 625000
2010-02-28 750000
...
2014-10-31 450000
2014-11-30 475000
我想查看季节性月度效应。
这可能很简单,但是如何从Date中提取月份以创建用于回归的分类虚拟变量?
我希望它看起来像这样:
Date 01 02 03 04 05 06 07 08 09 10 11
2010-01-31 1 0 0 0 0 0 0 0 0 0 0
2010-02-28 0 1 0 0 0 0 0 0 0 0 0
...
2014-10-31 0 1 0 0 0 0 0 0 0 1 0
2014-11-30 0 1 0 0 0 0 0 0 0 0 1
我尝试使用pd.DataFrame(df.index.month,index = df.index)...这给了我每个日期的月份。我相信我需要使用pandas.core.reshape.get_dummies然后以0/1矩阵格式获取变量。有人能告诉我怎么样?感谢。
答案 0 :(得分:0)
这就是我四月的表现:
import pandas as pd
import numpy as np
dates = pd.date_range('20130101', periods=4, freq='MS')
df = pd.DataFrame(np.random.randn(4), index=dates, columns=['data'])
df.ix[dates.month==4]
我们的想法是将日期作为索引,然后在数据框上进行布尔索引选择。
>>> df
data
2013-01-01 0.141205
2013-02-01 0.115361
2013-03-01 -0.309521
2013-04-01 -0.236317
>>> df.ix[dates.month==4]
data
2013-04-01 -0.236317