Python 将单个柱熔化为两个独立的柱

Python 将单个柱熔化为两个独立的柱,python,pandas,pivot-table,data-science,melt,Python,Pandas,Pivot Table,Data Science,Melt,我有一只熊猫,它们看起来如下: df = id A_value D_value 1 50 60 2 33 45 我想把它分成: df = id value value_type 1 50 A 1 60 D 2 33

我有一只熊猫,它们看起来如下:

df = id       A_value       D_value
      1        50            60
      2        33            45
我想把它分成:

df = id       value       value_type
      1        50           A
      1        60           D 
      2        33           A
      2        45           D
最好的方法是什么

谢谢

你可以试试

>>> df1 = pd.melt(df, id_vars=['id'], var_name='value_type')
>>> df1
   id value_type  value
0   1    A_value     50
1   2    A_value     33
2   1    D_value     60
3   2    D_value     45

>>> df1.value_type = df1.value_type.str.extract(r'(\w)_')
>>> df1
   id value_type  value
0   1          A     50
1   2          A     33
2   1          D     60
3   2          D     45