gpt4 book ai didi

python - 如何 reshape 数据框并将列转换为行?

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

df = pd.DataFrame({'ProdcutID': {0: '2125',1: '1204',2: '4390'},
'Color':{0:'R',1:'B',2:'Y'},
'From':{0:'CA',1:'OH',2:'IN'},
'Color1':{0:'P',2:'W'},
'From1':{0:'NJ',2:'DE'},
'Color3':{1:'G',2:'P'},
'From3':{1:'MX',2:'PA'}})

enter image description here

我有上面奇怪的数据框,想将列转换为行。我尝试使用 df.T 但没有得到我想要的。可能使用df.groupby('ProductID')...

预期结果:

enter image description here

最佳答案

尝试使用 pd.wide_to_long,但首先您需要重命名几个列标题以匹配其余列的模式。

df1 = df.rename(columns={'Color':'Color0','From':'From0'})
pd.wide_to_long(df1,['Color','From'],'ProdcutID','No').sort_index(level=0).dropna()

输出:

             Color From
ProdcutID No
1204 0 B OH
3 G MX
2125 0 R CA
1 P NJ
4390 0 Y IN
1 W DE
3 P PA

关于python - 如何 reshape 数据框并将列转换为行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56997664/

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