也可以使用来完成这种类型的操作pd.melt
,该操作将取消显示DataFrame。
如果DataFramedf
看起来像这样:
row labels Tue Wed Thu Sat Sun Fri Mon
0 Apple 21 39 24 27 37 46 42
1 Banana 32 50 48 35 21 27 22
2 Pear 37 20 45 45 31 50 32
然后,我们选择该row_labels
列作为我们的值,id_var
并选择其余列作为我们的值(value_vars
)。我们甚至可以同时为列选择新名称:
>>> pd.melt(df,
id_vars='row labels',
value_vars=list(df.columns[1:]), # list of days of the week
var_name='Column',
value_name='Sum of Value')
row labels Column Sum of Value
0 Apple Tue 21
1 Banana Tue 32
2 Pear Tue 37
3 Apple Wed 39
4 Banana Wed 50
5 Pear Wed 20
...
所述value_vars
堆叠下面相互:如果列值需要以特定的顺序将需要熔化之后对列进行排序。