根据具有Date索引的布尔系列过滤pandas DataFrame吗?

时间:2018-06-25 18:01:20

标签: python pandas dataframe subset

我有一个大df,其中索引是日期,还有一个布尔(真/假)系列,其中索引也是日期。它们不包含相同数量的行。我想按日期将我的df子集化,其中相应的序列值为True。我有两种方法可以实现这一目标,但我觉得有更好的方法。一种涉及循环,另一种基本上是这样:

df[df.index.isin(df_sub_look[df_sub_look == True].index)]

我觉得必须有其他方法,所以我很好奇是否有其他直接方法被我忽略了。

1 个答案:

答案 0 :(得分:2)

IIUC,加入日期索引,然后进行过滤:

df = df_sub_look.to_frame(name='sub_look').join(df)
df[df.pop('sub_look')]