Python 2.7 datetime索引列上的筛选器透视表

Python 2.7 datetime索引列上的筛选器透视表,python-2.7,datetime,pandas,filter,slice,Python 2.7,Datetime,Pandas,Filter,Slice,您好,我想在特定日期对数据透视表进行切片,并找到Orange1为具有datetime值的列提供答案的位置。在此填写我的数据和代码: Df_Pivot: max DateTime_End DateTime_Start Date 2015-03-01 09:1

您好,我想在特定日期对数据透视表进行切片,并找到Orange1为具有datetime值的列提供答案的位置。在此填写我的数据和代码:

Df_Pivot:

                                                    max
                                     DateTime_End
    DateTime_Start       Date                  
    2015-03-01 09:18:08  2015-03-01 2015-03-01 09:58:00
    2015-03-01 08:10:26  2015-03-01 2015-03-01 08:33:00
    2015-03-01 09:13:15  2015-03-01 2015-03-01 09:28:00
    2015-03-01 09:01:06  2015-03-01 2015-03-01 09:20:00
    2015-03-01 11:53:37  2015-03-01 2015-03-01 12:00:00
我想筛选DateTime\u开始日期。现在我已经用额外的列date完成了这项工作,该列是转换为字符串的datetime.date()(稍后我添加了date列)。但是,我认为过滤索引列DateTime_仅从日期开始更为优雅

这可能吗

受此启发,并构建了:

from datetime import datetime, date
import pandas as pd
idx = pd.IndexSlice
data['Df_New'] = data['Df_Pivot'].loc[idx[date(year=2015,month=4,day=15),:],:]
它返回以下内容:

   File "/anaconda/lib/python2.7/site-packages/pandas/tseries/index.py", line 1369, in get_loc
    raise KeyError(key)
KeyError: datetime.date(2015, 4, 15)

好吧,你显示的数据中没有“2015-04-15”,只有“2015-03-01”。但更大的问题可能是你没有分一杯羹。i、 e.x:x是一个切片,x不是。嗨,约翰,你是对的,它是示例数据,在整个数据帧2015-04-15中存在。你的评论让我想,你是对的。我现在修复了它,只在DateTime\u Start上重新建立索引。然后你可以简单地按df[2015-04-15]进行切片。谢谢