gpt4 book ai didi

python-3.x - pandas multiindex - 如何在使用列时选择第二级?

转载 作者:行者123 更新时间:2023-12-03 08:45:57 25 4
gpt4 key购买 nike

我有一个带有此索引的数据框:

index = pd.MultiIndex.from_product([['stock1','stock2'...],['price','volume'...]])

这是一个有用的结构,可以做 df['stock1'] ,但如何选择所有价格数据?我无法理解文档。

我尝试了以下但没有运气: df[:,'price'] df[:]['price'] df.loc(axis=1)[:,'close'] df['price]
如果无论出于何种原因,这种索引样式都被普遍认为是一个坏主意,那么什么是更好的选择?我应该将股票的多指数指数作为时间序列的标签而不是列级别的标签吗?

非常感谢

编辑 - 我对列使用多索引,而不是索引(措辞对我来说更好)。文档中的示例侧重于多级索引而不是列结构。

最佳答案

还使用约翰的数据样本:

使用 xs()是另一种切片 MultiIndex 的方法:

df
0
stock1 price 1
volume 2
stock2 price 3
volume 4
stock3 price 5
volume 6

df.xs('price', level=1, drop_level=False)
0
stock1 price 1
stock2 price 3
stock3 price 5

或者,如果您有 MultiIndex代替列:
df
stock1 stock2 stock3
price volume price volume price volume
0 1 2 3 4 5 6

df.xs('price', axis=1, level=1, drop_level=False)
stock1 stock2 stock3
price price price
0 1 3 5

关于python-3.x - pandas multiindex - 如何在使用列时选择第二级?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45128523/

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