【发布时间】:2013-01-15 18:40:56
【问题描述】:
我有一个熊猫数据框df:
Out[16]:
<class 'pandas.core.frame.DataFrame'>
DatetimeIndex: 269850 entries, 2012-12-19 16:15:36 to 2012-12-20 14:36:55
Data columns:
X1 269850 non-null values
X2 269848 non-null values
X3 269848 non-null values
dtypes: float64(2), object(1)
我想对数据框进行切片以返回从 2012-12-20 05:00:00 到 2012-12-20 09:00:00 的四小时数据窗口
当我尝试时:
Slicedf = df.truncate(before='12/20/2012 05:00:00',after='12/20/2012 09:00:00')
出现以下错误:
KeyError: datetime.datetime(2012, 12, 20, 5, 0)
我也试过(来自Pandas DataFrame slicing by day/hour/minute):
from datetime import datetime
x=datetime(2012,12,20,5,0,0)
y=datetime(2012,12,20,9,0,0)
Slicedf = df.ix[x:y]
返回完全相同的错误。
【问题讨论】:
-
你用的是什么版本的熊猫?
-
奇怪了,能更新到0.10.1吗?
df1 = df.head()也会发生这种情况吗?如果可以,您可以粘贴df1.to_dict()的内容吗? (我很早就尝试了一个虚拟 DataFrame,它工作正常......) -
目前使用 0.10.0
df1=df.head()工作正常。将更新 pandas 并重试。 -
对不起,我的意思是
df1.truncate(..)和df1.ix[x:y]工作正常吗?