Python pandas nlt单列分成两个独立的

Python pandas melt single column into two seperate

我有pandas看如下:

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