首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >MultiIndex切片给我“关键错误”

MultiIndex切片给我“关键错误”
EN

Stack Overflow用户
提问于 2019-05-16 12:41:43
回答 2查看 568关注 0票数 0

我有一个带有指数(ID,Date)的数据框架,我希望在一定的时间框架内选择所有的观测结果(例如06-1988 : 11-1988)。如果不是所有的观察都在某个ID的时间框架内出现,我仍然想包括那些存在的观察。

可视化我的数据框架给出一个更好的想法:(面板是不平衡的)

代码语言:javascript
运行
复制
                           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年期间的所有观察结果,我希望得到以下输出:

代码语言:javascript
运行
复制
                           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 

我还有一个具有相同两个多索引设置的系列,下面的命令起作用了:

代码语言:javascript
运行
复制
X.loc[:,'1988-06':'1998-07']

如果我想要所有ID在1988-06和1998-07之间的所有观察,当我尝试同样的方法对Dataframe,我得到一个KeyError。

对Dataframe也可以这样做吗?

EN

回答 2

Stack Overflow用户

发布于 2019-05-16 13:07:35

您试过只使用一个“日期”值访问它吗?类似于:X.loc[:,'1988-06']

这个问题也可能有所帮助:pandas: slice a MultiIndex by range of secondary index

票数 0
EN

Stack Overflow用户

发布于 2019-05-16 13:17:42

试试这个:

代码语言:javascript
运行
复制
out_frame = df[(df['Date'] > '2010-09') & (df['Date'] < '2012-12')]
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56168839

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档