gpt4 book ai didi

python - 使用数据框列值作为列名

转载 作者:太空宇宙 更新时间:2023-11-03 23:57:57 25 4
gpt4 key购买 nike

我遇到了一个问题。我有一个数据框如下:

                  test_index test-item test_value
Serial_Number
SN_0 1 A A-0.1
SN_0 1 B B-0.1
SN_0 2 A A-0.2
SN_0 2 B B-0.2
SN_1 3 A A-0.3
SN_1 3 B B-0.3
SN_1 4 A A-0.4
SN_1 4 B B-0.4
SN_3 5 A A-0.5
SN_3 5 B B-0.5
SN_3 6 A A-0.6
SN_3 6 B B-0.6

我想要一个像下面这样的数据框:

Serial_Number       test_index             A           B              
SN_0 1 A-0.1 B-0.1
SN_0 2 A-0.2 B-0.2
SN_1 3 A-0.3 B-0.3
SN_1 4 A-0.4 B-0.4
SN_3 5 A-0.5 B-0.5
SN_3 6 A-0.6 B-0.6

我尝试使用 dataframe.unstack()dataframe.reset_index(),但我失败了。

最佳答案

您可以使用 DataFrame.set_index 的组合使用 append=True 参数,然后是 unstack .然后使用 reset_indexDataFrame.droplevel清理格式。

注意 - 我相信 droplevel 是 pandas 0.24.0 或更高版本的方法,因此这将需要最新版本的 pandas。

(df.set_index(['test_index', 'test-item'], append=True)
.unstack(level=2)
.reset_index(col_level=1)
.droplevel(0, axis=1))

[输出]

test-item Serial_Number  test_index      A      B
0 SN_0 1 A-0.1 B-0.1
1 SN_0 2 A-0.2 B-0.2
2 SN_1 3 A-0.3 B-0.3
3 SN_1 4 A-0.4 B-0.4
4 SN_3 5 A-0.5 B-0.5
5 SN_3 6 A-0.6 B-0.6

关于python - 使用数据框列值作为列名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56846895/

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