2016-07-01 92 views
3

我有一個面板,Items索引爲天。熊貓:數據框索引的重新索引面板

<class 'pandas.core.panel.Panel'> 
Dimensions: 1260 (items) x 6 (major_axis) x 6 (minor_axis) 
Items axis: 2011-06-27 00:00:00 to 2016-06-28 00:00:00 
Major_axis axis: BP to XOM 
Minor_axis axis: BP to XOM 

指數:

DatetimeIndex(['2011-06-27', '2011-06-28', '2011-06-29', '2011-06-30', 
       '2011-07-01', '2011-07-05', '2011-07-06', '2011-07-07', 
       '2011-07-08', '2011-07-11', 
       ... 
       '2016-06-15', '2016-06-16', '2016-06-17', '2016-06-20', 
       '2016-06-21', '2016-06-22', '2016-06-23', '2016-06-24', 
       '2016-06-27', '2016-06-28'], 
       dtype='datetime64[ns]', name=u'Date', length=1260, freq=None, tz=None) 

我有次在毫秒級的索引中的數據框:

DatetimeIndex(['2016-05-18 09:30:00.200000', '2016-05-18 09:30:00.400000', 
       '2016-05-18 09:30:00.600000', '2016-05-18 09:30:00.800000', 
       '2016-05-18 09:30:01',  '2016-05-18 09:30:01.200000', 
       '2016-05-18 09:30:01.400000', '2016-05-18 09:30:01.600000', 
       '2016-05-18 09:30:01.800000', '2016-05-18 09:30:02', 
       ... 
       '2016-05-20 15:59:58.200000', '2016-05-20 15:59:58.400000', 
       '2016-05-20 15:59:58.600000', '2016-05-20 15:59:58.800000', 
       '2016-05-20 15:59:59',  '2016-05-20 15:59:59.200000', 
       '2016-05-20 15:59:59.400000', '2016-05-20 15:59:59.600000', 
       '2016-05-20 15:59:59.800000', '2016-05-20 16:00:00'], 
       dtype='datetime64[ns]', name=u'time', length=351000, freq='200L', tz=None) 

當我嘗試重新索引我的板,我得到的只是NaN值

pnl2 = pnl.reindex(df.index) 

pnl2[0,:,:] 

    BP COP CVX MPC VLO XOM 
BP NaN NaN NaN NaN NaN NaN 
COP NaN NaN NaN NaN NaN NaN 
CVX NaN NaN NaN NaN NaN NaN 
MPC NaN NaN NaN NaN NaN NaN 
VLO NaN NaN NaN NaN NaN NaN 
XOM NaN NaN NaN NaN NaN NaN 

I知道,然而,該小組有數據的日期的匹配我的數據框:

pnl[datetime.datetime(2016, 5, 18),:,:] 


    BP   COP   CVX   MPC   VLO   XOM 
BP 0.085169 -0.020719 -0.027176 -0.001270 -0.004472 -0.025772 
COP -0.020719 0.064905 -0.043904 -0.012531 0.010451 -0.005583 
CVX -0.027176 -0.043904 0.185100 -0.006396 -0.001374 -0.108513 
MPC -0.001270 -0.012531 -0.006396 0.053583 -0.042791 0.012225 
VLO -0.004472 0.010451 -0.001374 -0.042791 0.059244 -0.015029 
XOM -0.025772 -0.005583 -0.108513 0.012225 -0.015029 0.199892 

問:

我需要什麼,以便正確地重新索引我與我的數據幀的指數面板呢?

+1

不,如果你只是通過之日起它的工作? 'pnl2 = pnl.reindex(df.index.date)' – EdChum

+0

@EdChum爲什麼是這樣!謝謝!如果你想做出答案,我會很樂意接受它 –

回答

1

的重建索引失敗,因爲時間組件,因此您可以訪問只是你datetimeIndex的date組件

pnl2 = pnl.reindex(df.index.date)