gpt4 book ai didi

python - 将 pandas MultiIndex DataFrame 从按行转换为按列

转载 作者:太空狗 更新时间:2023-10-29 20:50:10 26 4
gpt4 key购买 nike

我在 zipline 和 pandas 工作,并使用 to_frame() 方法将 pandas.Panel 转换为 pandas.DataFrame .这是生成的 pandas.DataFrame,如您所见,它是多索引的:

                                  price
major minor
2008-01-03 00:00:00+00:00 SPY 129.93
KO 26.38
PEP 64.78
2008-01-04 00:00:00+00:00 SPY 126.74
KO 26.43
PEP 64.59
2008-01-07 00:00:00+00:00 SPY 126.63
KO 27.05
PEP 66.10
2008-01-08 00:00:00+00:00 SPY 124.59
KO 27.16
PEP 66.63

我需要将此框架转换为如下所示:

                          SPY     KO     PEP
2008-01-03 00:00:00+00:00 129.93 26.38 64.78
2008-01-04 00:00:00+00:00 126.74 26.43 64.59
2008-01-07 00:00:00+00:00 126.63 27.05 66.10
2008-01-08 00:00:00+00:00 124.59 27.16 66.63

我已经尝试过 pivot 方法、stack/unstack 等,但这些方法不是我要找的。我在这一点上真的很困难,感谢任何帮助。

最佳答案

因为您已经有了一个 MultiIndex,stackunstack 是您想要用来将行移动到 cols 的,反之亦然。话虽这么说,unstack 应该完全符合您的要求。如果您有 DataFrame df,那么 df2 = df.unstack('minor') 应该可以解决问题。或者更简单地说,因为默认情况下 stack/unstack 使用最内层,df2 = df.unstack()

关于python - 将 pandas MultiIndex DataFrame 从按行转换为按列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15751283/

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