我有这样的事情:

Values     Time
  22        0
  45        1
  65        2
  78        0
  12        1
  45        2


我想要这个:

Time    0    1    2
Val1    22   45   65
Val2    78   12   45


我该怎么做?

最佳答案

这是pivotcumcount创建索引

df['idx'] = 'Val' + (df.groupby('Time').cumcount()+1).astype(str)
df.pivot(index='idx', columns='Time', values='Values').rename_axis(None)


输出:

Time   0   1   2
Val1  22  45  65
Val2  78  12  45

关于python - 如何在Pandas中将列转换为行?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56317512/

10-14 10:54