2016-05-09 11 views
2

私はさまざまなパンダのインデックスフォーマットに苦しんでいます。パンダDatetimeIndexの時間範囲を指定してください

マイ単変量時系列(データ)は

>>> type(data) 
<class 'pandas.core.series.Series'> 
>>> type(data.index) 
<class 'pandas.tseries.index.DatetimeIndex'> 
>>> 

私は、出発点と終点を抽出する機能を持っている

>>>start 
textdate 
2015-01-01 22:00:03.297 1.210490 
Name: mean, dtype: float64 
>>> 

>>>end 
textdate 
2015-01-01 22:01:19.984 1.210485 
Name: mean, dtype: float64 
>>> 

を言うこの

2015-01-01 22:00:01.973 1.210525 
2015-01-01 22:00:03.297 1.210490 
2015-01-01 22:00:23.922 1.210485 
2015-01-01 22:00:24.507 1.210480 
2015-01-01 22:01:05.979 1.210490 
2015-01-01 22:01:08.390 1.210525 
2015-01-01 22:01:09.899 1.210520 
2015-01-01 22:01:09.950 1.210505 
2015-01-01 22:01:13.576 1.210505 
2015-01-01 22:01:19.984 1.210485 
2015-01-01 22:01:27.936 1.210510 

のように見えますDatetimeIndexのように見えるインデックス値に基づいて、シリーズを最初から最後までスライスする方法はありますか

>>> start.index 
DatetimeIndex(['2015-01-01 22:00:03.297'], dtype='datetime64[ns]', name=u'textdate', freq=None) 
>>> 

として自分自身をマット...私は私の

TypeError: Cannot convert input to Timestamp 

を与えるこの

series = data[start.index : end.index] 

を試してみましたしかし、私はDatetimeIndexオブジェクトが起動し、タイムスタンプに終わるの変換に失敗した

+1

は' data.loc [end.index start.index]のでしょうか? – EdChum

+0

data.locで同じエラーが発生しました[...] – Pat

+1

[data.loc [start.index [0]:end.index [0]] ' – EdChum

答えて

1

: `作業:

data.loc[start.index[0] : end.index[0]] 
1

私はあなたのスライスでSeriesへの参照を使用していると思います。代わりにしてみてください:

series = data[start.index[0] : end.index[0]] 

私はあなたのstartendは単一周期シリーズだと思います。あなたは、単一の行Series内部のスカラー値にアクセスし、DFをスライスするlocにこれを渡すために必要な

関連する問題