gpt4 book ai didi

python - Pandas stack/unstack 的错误结果

转载 作者:太空宇宙 更新时间:2023-11-04 02:20:02 24 4
gpt4 key购买 nike

我有这个 Pandas DataFrame:

              rnd  non-rnd
first last
andrew wood 0 123
bob wood 0 234
charlie wood 0 345

谁能解释一下下面两个操作的区别:

In [1]: df.unstack(level=0).stack(level=0)
Out[1]:
first andrew bob charlie
last
wood non-rnd 0 0 0
rnd 123 234 345

In [2]: df.unstack(level=0).sort_index(axis=1).stack(level=0)
Out[2]:
first andrew bob charlie
last
wood non-rnd 123 234 345
rnd 0 0 0

其中第一个显然是错误的。这是一个错误吗?还是我用错了?

最佳答案

所以我的解决方案是,总是在 unstack 之前使用 stack ,使索引或列成为简单索引,而不是让它们都是多重索引。 (肯定是bug,看上面的评论,github上有two link)

df.stack().unstack(level=0)
Out[125]:
first andrew bob charlie
last
wood rnd 0 0 0
non-rnd 123 234 345

关于python - Pandas stack/unstack 的错误结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51849095/

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