首页 > 解决方案 > 将数据列转换为行

问题描述

嗨,我有一个这样的 df:

ValueA ValueB ID
0.10   1.00   1
0.15   2.00   2 
0.25   4.00   3

等等。我需要将此 df 转换为如下输出:

ID Value X 
1  ValueA 0.10
1  ValueB 1.00    
2  ValueA 0.15
2  ValueB 2.00
3  ValueA 0.25
3  ValueB 4.00

我怎么能用 R 做到这一点?谢谢你的帮助。

标签: rdataframe

解决方案


使用该reshape2软件包,您可以执行以下操作:

> reshape2::melt(mydata, id = "ID", variable = "Value", value.name = "X")
  ID  Value    X
1  1 ValueA 0.10
2  2 ValueA 0.15
3  3 ValueA 0.25
4  1 ValueB 1.00
5  2 ValueB 2.00
6  3 ValueB 4.00

推荐阅读