【发布时间】:2019-05-16 12:41:43
【问题描述】:
我有一个带有索引(ID,日期)的数据框,我想在其中选择特定时间范围内的所有观察值(例如 06-1988 : 11-1988)。如果并非所有观察结果都出现在某个 ID 的时间范围内,我仍然希望包括 出现的观察结果。
可视化我的数据框以提供更好的想法:(面板不平衡)
Var1 Var2
ID Date
10113 2010-07 24.7000 24.7000
2010-08 25.2600 24.7000
2010-09 25.2800 25.2800
2010-10 25.3700 25.3700
10223 2010-09 24.7000 24.7000
2010-10 25.2600 25.2600
2011-11 25.2800 25.2800
2011-12 25.3700 25.3700
2012-01 25.2900 25.2900
例如,我想要 2010-09 和 2011-12 之间的所有观察,我想要得到以下输出:
Var1 Var2
ID Date
10113 2010-09 25.2800 25.2800
2010-10 25.3700 25.3700
10223 2010-09 24.7000 24.7000
2010-10 25.2600 25.2600
2011-11 25.2800 25.2800
2011-12 25.3700 25.3700
我也有一个具有相同两个多索引设置的系列,并且以下命令有效:
X.loc[:,'1988-06':'1998-07']
如果我想要所有 ID 在 1988-06 和 1998-07 之间的所有观察结果。当我对 Dataframe 尝试同样的方法时,我得到一个 KeyError。
是否可以对 Dataframe 做同样的事情?
【问题讨论】:
标签: python select subset slice multi-index