gpt4 book ai didi

python - 按列级别/轴 1 多索引选择 Pandas 数据

转载 作者:行者123 更新时间:2023-11-28 17:17:37 25 4
gpt4 key购买 nike

这是一段代码,它完成了我正在尝试做的部分工作:

selection=df.xs(('year2012','3quarter','A'),level=[0,1,2],axis=1)

如何在轴 1 的每个级别中选择多个条件?以下似乎是实现此目的的错误方法。

selection=df.xs(( ['year2012','year2015'] , ['3quarter','4quarter'] , 'A'), level=[0,1,2], axis= 1)

谢谢

最佳答案

考虑示例数据框 df

mux = pd.MultiIndex.from_product([
['year{}'.format(i) for i in range(2010, 2017)],
['{}quarter'.format(i) for i in range(1, 5)],
list('ABCD')
])

df = pd.DataFrame([np.arange(len(mux))], columns=mux)

df

enter image description here

这样做的方法是使用pd.IndexSlice

l1 = ['year2012','year2015']
l2 = ['3quarter','4quarter']
l3 = 'A'

df.loc[:, pd.IndexSlice[l1, l2, l3]]

enter image description here

关于python - 按列级别/轴 1 多索引选择 Pandas 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43378678/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com