我正在尝试转换以下熊猫df
Error Fore time loc qty con FA
2960 32863 2086 CFA Ahmedabad 29903 1 90
2960 32863 2087 CFA Ahmedabad 29903 1 90
8090 71453 2086 CFA Bangalore 79543 2 90
8090 71453 2087 CFA Bangalore 79543 2 90
到
loc var 2086 2087
CFA Ahmedabad qty 29903 29903
CFA Ahmedabad Fore 32863 32863
CFA Ahmedabad Error 2960 2960
CFA Ahmedabad con 1 1
CFA Ahmedabad FA 90 90
我尝试使用熔解/堆叠,但似乎没有任何作用
df = pd.melt(df, id_vars='loc', value_vars=var, value_name='time')
此代码无法及时获取列,您将不胜感激吗?
答案 0 :(得分:1)
据我了解,您可以使用melt()
+ pivot_table()
:
m=df.melt(['time','loc']).pivot_table(index=['loc','variable'],columns='time')
print(m)
time 2086 2087
loc variable
CFA Ahmedabad Error 2960 2960
FA 90 90
Fore 32863 32863
con 1 1
qty 29903 29903
CFA Bangalore Error 8090 8090
FA 90 90
Fore 71453 71453
con 2 2
qty 79543 79543