使用 melt 在 R 中重塑数据

Reshaping data in R using melt

我已经尝试应用人们建议的方法来重塑数据,但不知何故我无法按照我想要的方式重塑我的数据。如果有人能提供帮助,我将不胜感激:

My data looks like this:
      AB      LP     PD1     PD2     PY1     PY2     PY3     PY4     PY5 t
1 -50.000 -50.000 -50.000 -50.000 -50.000 -50.000 -50.000 -50.000 -50.000 1
2 -50.153 -53.316 -50.416 -50.416 -53.455 -53.467 -53.700 -53.403 -53.218 2
3 -50.288 -54.399 -50.726 -50.726 -53.603 -53.644 -54.457 -53.664 -53.776 3
4 -50.410 -53.630 -50.956 -50.956 -52.385 -52.649 -53.642 -52.575 -52.740 4
5 -50.519 -53.075 -51.127 -51.127 -52.072 -52.174 -53.132 -51.715 -52.563 5
6 -50.617 -52.616 -51.255 -51.255 -52.023 -51.947 -52.602 -51.857 -52.643 6
>

我想改变它,以便我可以用 ggplot 绘制它,它需要这样:

AB -50.000 1
AB -50.153 2
AB -50.288 3

etc,其中第三列是原始数据的最后一列,即时间(第 t 列)

如果我使用 v=melt(values) 我得到这个:

      variable   value
1       AB -50.000
2       AB -50.153
3       AB -50.288
4       AB -50.410
5       AB -50.519
6       AB -50.617

差不多了,只是现在时间栏(t)加在了底部。我如何获得时间成为第三列?

我相信这是我需要数据的格式,以便使用 ggplot2 绘制多条线。

感谢您的帮助

JSS

使用reshape2,您需要做:

v <- melt(values, id.vars = "t")