gpt4 book ai didi

python - 堆叠 MultiIndex 的所有级别

转载 作者:太空狗 更新时间:2023-10-30 01:06:19 25 4
gpt4 key购买 nike

我有一个数据框:

index = pd.MultiIndex.from_product([['a', 'b'], ['A', 'B'], ['One', 'Two']])
df = pd.DataFrame(np.arange(16).reshape(2, 8), columns=index)
df

enter image description here

如何在不知道列有多少层的情况下堆叠 MultiIndex 的所有层。

我希望结果看起来像这样:

0  a  A  One     0
Two 1
B One 2
Two 3
b A One 4
Two 5
B One 6
Two 7
1 a A One 8
Two 9
B One 10
Two 11
b A One 12
Two 13
B One 14
Two 15
dtype: int64

最佳答案

可以先找到len的level,得到range传给stack :

print (df.columns.nlevels)
3

print (list(range(df.columns.nlevels)))
[0, 1, 2]

print (df.stack(list(range(df.columns.nlevels))))
0 a A One 0
Two 1
B One 2
Two 3
b A One 4
Two 5
B One 6
Two 7
1 a A One 8
Two 9
B One 10
Two 11
b A One 12
Two 13
B One 14
Two 15
dtype: int32

关于python - 堆叠 MultiIndex 的所有级别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38314674/

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