gpt4 book ai didi

python - 在 Pandas 中转换数据框

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

假设我有数据框:

x1  x2  value_x1    value_x2
a b 1 2
a c 3 4
b c 5 6

我能得到下面的数据框吗?

a   b   c
1 2 0
3 0 4
0 5 6

我尝试了 pivot_table 和 melt,但结果不合适。

谢谢。

最佳答案

使用wide_to_long :

df = pd.wide_to_long(df.reset_index(), stubnames=['x', 'value_x'], i='index', j='a')

print (df)
x value_x
index a
0 1 a 1
1 1 a 3
2 1 b 5
0 2 b 2
1 2 c 4
2 2 c 6

然后 unstack进行一些数据清理:

df = (df.reset_index(level=1, drop=True)
.set_index('x', append=True)['value_x']
.unstack(fill_value=0)
.rename_axis(None)
.rename_axis(None, axis=1))
print (df)
a b c
0 1 2 0
1 3 0 4
2 0 5 6

关于python - 在 Pandas 中转换数据框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50735446/

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