2014-07-16 25 views
0

我想將我的數據重塑爲長格式,但我想重複我的數據集中每個變量的id的整個範圍,即使對於那些id變量不帶任何值的條目。目前我可以得到窄的數據,每個變量的ID都有相應的條目將數據重塑爲長格式,爲每個變量重複範圍的ids

假設我的數據有15個變量,有20個可能的ID,我想創建一個這種數據的狹義形式,即15 *長度爲20(對每個變量重複的ids範圍),每個重複範圍的id顯示變量取得的值,對於id1,id2,id3等,直到達到id範圍的末尾,則變量2爲顯示爲id1,id2,id3等

我不確定oh在R中做到這一點,我目前使用的是重塑包。

+7

如果您提供[reproduci ble例子](http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example)你的問題。 –

回答

1

你可以用它解釋here

v1 <- 1:5 
v2 <- 1:6 
rep(v1, each = 6) 
# 1 1 1 1 1 1 2 2 2 2 2 2 3 3 3 3 3 3 4 4 4 4 4 4 5 5 5 5 5 5 
rep(v2, 5) 
#1 2 3 4 5 6 1 2 3 4 5 6 1 2 3 4 5 6 1 2 3 4 5 6 1 2 3 4 5 6 
1

呀複製功能,這是很難的工作,但你要找的熔體功能我想......

library(reshape2) 
melt(yourdata, id.vars = 'ID COLUMN') 

這將返回一個300 x 3的數據集,如下所示:

ID COLUMN variable value 
     1  col2  7 
     1  col3  8 
    ....  ....  .... 
     20  col14  99 
     20  col15  100