Python中,熊猫:布尔索引DateTimeIndex以期

Python中,熊猫:布尔索引DateTimeIndex以期

问题描述:

比较让我们考虑一个包含每2010年1月的一个月中每天1列2个值的数据帧:Python中,熊猫:布尔索引DateTimeIndex以期

date_range = pd.date_range(dt(2010,1,1), dt(2010,1,31), freq='1D') 
df = pd.DataFrame(data = np.random.rand(len(date_range),2), index = date_range) 

我想使用期限Period('2009-12-28/2010-01-03', 'W-SUN')到创建一个布尔型索引器,该索引器将返回仅包含该期间的DataFrame。我如何创建这样的布尔索引器? - 理想情况下不需要将时间段转换为日期时间范围。

让查询pd.Period对象是:

query = pd.Period('2009-12-28/2010-01-03', 'W-SUN') 

您可以通过以下方式直接做到这一点通过访问它的start_timeend_time属性:

1)使用DF.truncate

df.truncate(query.start_time, query.end_time) 

2)使用布尔指数器:

df[(df.index >= query.start_time) & (df.index <= query.end_time)] 

3)使用日期时间索引在默认情况下包括端点:

df[query.start_time:query.end_time] 

所有这些生产上期

enter image description here

+0

文档是一盏小灯/永久居民更新随时欢迎 – Jeff