我正在处理一个多索引数据帧,其中3级索引是一个日期时间序列。这个日期时间序列基本上是随机的日期,没有特定的顺序(它们是建筑物建造完成的日期)。如何使用此datetime索引执行条件选择?例如>=2014-1-1
(到目前为止,我的笨拙解决方案是将这个3级索引转换为一个列,然后基于该列执行条件选择,例如df‘’Date‘.dt.Year>2013)
发布于 2017-09-06 02:31:05
首先,使用sort_index对索引进行排序(最终只针对level=3,这取决于您是如何生成数据的)
然后使用IndexSlice df.loc[pd.IndexSlice: [:, :, :, dt.datetime(2014,1,1):, :]
发布于 2017-09-06 01:54:18
使用pandas.IndexSlice。我是在this帖子的末尾学会使用它的。
发布于 2017-09-06 02:20:16
您可以尝试执行以下操作:
df[df.index.get_level_values(2)>'2014-01-01']https://stackoverflow.com/questions/46060035
复制相似问题