我有以下要尝试融化的数据框。
所以我的目标是获得2列输出
所以我的输出应该看起来像[那只是输出的标题,为了简洁起见,我没有完全显示出来]
我尝试了以下方法,但不起作用。
df2 = pd.melt(df, id_vars=df.index, var_name="Name", value_name="Value")
它说: KeyError:“ DataFrame中不存在以下'id_vars':
PS:列是“预测变量”,因此如果不太复杂,我很乐意在列名中添加P作为前缀,例如P0 P1 P2 P3 P4 P5
答案 0 :(得分:1)
我们可以只添加reset_index
pd.melt(df.reset_index(), id_vars='index', var_name="Name", value_name="Value")
或使用stack
df.stack().reset_index()