私は、Python datetimeオブジェクトを使用してpandasデータフレームを読み取り、スライスすることができますが、インデックスにはの既存の日付しか使用しないでください。たとえば、この作品:私はDFに存在しない開始日または終了日を使用している場合python pandasデータフレームのスライス日付条件
>>> data
<class 'pandas.core.frame.DataFrame'>
DatetimeIndex: 252 entries, 2010-12-31 00:00:00 to 2010-04-01 00:00:00
Data columns:
Adj Close 252 non-null values
dtypes: float64(1)
>>> st = datetime.datetime(2010, 12, 31, 0, 0)
>>> en = datetime.datetime(2010, 12, 28, 0, 0)
>>> data[st:en]
Adj Close
Date
2010-12-31 593.97
2010-12-30 598.86
2010-12-29 601.00
2010-12-28 598.92
はしかし、私のpython KeyError例外を取得します。
私の質問:日付範囲のデータフレームオブジェクトをクエリするにはどうすればよいですか。開始日と終了日がDataFrameに存在しない場合でも、パンダはレンジベースのスライスを可能にしますか?
私が最初に最も近い時間を見つけ、その後、スライスするためにそれを使用するためにパンダのバージョン0.10.1
あなたの例をコピーしてコピーすると、正常に動作します。しかし、私のプログラムの開始と終了の変数は、常にデータフレームの長さになります!私は何を間違えているのですか? - http://pastebin.com/raw.php?i=hfpHqF7s –
'DataFrame'を昇順にソートする必要があります。 – waitingkuo
データが昇順でソートされていればうまくいきました。 –