Python 将数据帧索引设置为DateTime
我有一个Python 将数据帧索引设置为DateTime,python,pandas,datetime,Python,Pandas,Datetime,我有一个pd.DataFrame,它有datetime64类型的索引。我想将一个pd.Series列连接到它,并将它映射到索引 但是,mypd.Series具有日期的类型,而mypd.DataFrame具有日期的类型 我试着将pd.Series索引转换成datetime这样 这就是pd.Series的外观: west_指数[1:5] 出[40]: 西 交换日期 2005-01-05 -0.7466 2005-01-06南 2005-01-07 0.3401 2005-01-10
pd.DataFrame
,它有datetime64
类型的索引。我想将一个pd.Series
列连接到它,并将它映射到索引
但是,mypd.Series
具有日期的类型,而mypd.DataFrame
具有日期的类型
我试着将pd.Series
索引转换成datetime
这样
这就是pd.Series
的外观:
west_指数[1:5]
出[40]:
西
交换日期
2005-01-05 -0.7466
2005-01-06南
2005-01-07 0.3401
2005-01-10 -0.0688
我做到了:
a=[datetime.strtime(u,,%Y-%m-%d'),用于西部的u索引.index]
west_index.set_index(a,in place=True)
当我尝试连接到我的mainpd.DataFrame
时,如下所示:
log\r[500:505]
出[42]:
BELEX15打赌BUX。。。STOXX50 WIG20
交换日期。。。
2006-12-08 0.131916 1.717272 -0.983922 ... 0.090416 -0.436533
2006-12-11 0.191401 -0.645286 1.158256 ... 0.576408 -0.086710
2006-12-12 -0.190785 -0.764530 0.753001 ... 0.396716 -0.684809
2006-12-13 -0.521898 0.726442 -1.459122 ... 0.629700 0.202408
2006-12-14 0.877326 -0.707257 1.099898 ... 0.718143 0.722291
对数=pd.concat([对数,西指数],轴=1)
我犯了一个错误
KeyError:datetime.datetime(2005,1,4,0,0)
我认为更好的方法是通过以下方式将两个索引中的日期时间转换为
log\r.index
或west\u index.index
:
#check it
print (west_index.index.dtype)
print (log_r.index.dtype)
west_index.index = pd.to_datetime(west_index.index)
log_r.index = pd.to_datetime(log_r.index)
log_r = pd.concat([log_r, west_index], axis=1)