繁体   English   中英

如何访问熊猫多索引数据框中的特定行

[英]How to access specific rows in a pandas multiindex dataframe

我正在使用我认为是 Pandas 多索引数据框。 有什么办法可以确定吗? 我的数据看起来像这样。

            cinc           Outcome   
Side           1         2       1  2
WarNum                               
1       0.146344  0.029989       1  2
4       0.152565  0.056853       1  2
7       0.082757  0.017940       1  2
10      0.076032  0.022553       1  2
13      0.048538  0.005754       1  2

当我输入 war_cinc.columns 时。 我得到以下输出。

MultiIndex([(   'cinc', 1),
            (   'cinc', 2),
            ('Outcome', 1),
            ('Outcome', 2)],
           names=[None, 'Side'])

如果我想对这些数据进行子集化,我该怎么做? (假设我想获取数据框 cinc 列的整个第二列)

要检查您的 df 是否具有Multiindex ,您可以执行以下操作:

isinstance(war_cinc.index, pd.MultiIndex)

这将返回True

要检查hierarchical列,您可以检查nlevels

if len(war_cinc.columns.nlevels) > 1:

在您的情况下,这将是True

您可以获得整个第二列,例如:

war_cinc[(   'cinc', 2)]

您需要在tuple传递列的所有levels以获取列值。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM