gpt4 book ai didi

python - pandas数据转换长-宽-长

转载 作者:行者123 更新时间:2023-11-28 21:44:07 29 4
gpt4 key购买 nike

如何从此表单获取数据(数据的长表示):

import pandas as pd
df = pd.DataFrame({
'c0': ['A','A','B'],
'c1': ['b','c','d'],
'c2': [1, 3,4]})

print(df)

输出:

   c0 c1  c2
0 A b 1
2 A c 3
3 B d 4

到这个表格:

   c0 c1  c2
0 A b 1
2 A c 3
3 A d NaN
4 B b NaN
5 B c NaN
6 B d 4

从长到宽再到长的转换是唯一的方法吗?

最佳答案

方法一
unstackstack

df.set_index(['c0', 'c1']).unstack().stack(dropna=False).reset_index()

enter image description here

方法二
reindex 与产品

df.set_index(['c0', 'c1']).reindex(
pd.MultiIndex.from_product([df.c0.unique(), df.c1.unique()], names=['c0', 'c1'])
).reset_index()

enter image description here

关于python - pandas数据转换长-宽-长,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41188363/

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