如何从多索引数据框中选择两个元素
Posted
技术标签:
【中文标题】如何从多索引数据框中选择两个元素【英文标题】:How to select two elements from multiindex dataframe 【发布时间】:2020-08-07 22:04:24 【问题描述】:我有一个这样的多索引数据框:
x ... y
count mean std ... 50% 75% max
dataset ...
a 142.0 54.266100 16.769825 ... 47.535269 71.803148 97.475771
bullseye 142.0 54.268730 16.769239 ... 47.382937 72.532852 85.876229
circle 142.0 54.267320 16.760013 ... 51.025022 77.782382 85.578134
d 142.0 54.263273 16.765142 ... 46.025600 68.525675 99.487200
dots 142.0 54.260303 16.767735 ... 51.299291 82.881589 94.249328
我只想排除具有均值和标准的列。我在pandas dataframe select columns in multiindex 找到了一种排除均值的方法,但不知道如何同时排除“标准”和“均值”。
df.iloc[:, [df.columns.get_level_values(1)=='mean']]
例如,我尝试使用 '=='
、 in ['mean,'std']
和许多其他方式来代替 'or'
,但无法弄清楚。
【问题讨论】:
【参考方案1】:将Index.isin
与~
的反转掩码一起使用:
df.loc[:, ~df.columns.get_level_values(1).isin(['mean', 'std'])]
【讨论】:
以上是关于如何从多索引数据框中选择两个元素的主要内容,如果未能解决你的问题,请参考以下文章