2015-06-13 41 views
0

我試圖應用人們提出的重構數據的建議,但不知何故,我無法像我想要的那樣重構數據。我真的很感激,如果有人可以幫助:使用R融合重塑R中的數據

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 

等,其中第三列是從原始數據,這是時間(列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

+0

或在鹼'NN < - 名字(DD)[ - 長度(DD)]; reshape(dd,dir ='l',vary = list(nn),times = nn)[,1:3]' – rawr

回答

1

使用reshape2,你需要做的:

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

現在我爲什麼不能解決這個問題?這簡直令人尷尬,我一直在掙扎數小時。非常感謝。 – jss

+0

不用擔心。如果它解決了您的問題,請不要忘記加註和/或接受我的答案。 –