0
我有一個3列的數據框(但這可能更多取決於我帶入數據框的文件的數量),所以我創建了最後一列(第4列)用數字代碼告訴我我想在哪裏解除數據(每列包含4組數據,所以我已經編碼它們)。Unstacking列(簡單但我掙扎!)
我想根據排序列來排列這三列,以便我現在有12列(3列x 4組)。
我知道這可能是如此,如此簡單,但我無法得到它。
在此先感謝!
我有一個3列的數據框(但這可能更多取決於我帶入數據框的文件的數量),所以我創建了最後一列(第4列)用數字代碼告訴我我想在哪裏解除數據(每列包含4組數據,所以我已經編碼它們)。Unstacking列(簡單但我掙扎!)
我想根據排序列來排列這三列,以便我現在有12列(3列x 4組)。
我知道這可能是如此,如此簡單,但我無法得到它。
在此先感謝!
這可以用reshape()
做到:
df <- cbind(matrix(1:24,8,dimnames=list(NULL,c(letters[1:3]))),code=rep(1:4,each=2));
df;
## a b c code
## [1,] 1 9 17 1
## [2,] 2 10 18 1
## [3,] 3 11 19 2
## [4,] 4 12 20 2
## [5,] 5 13 21 3
## [6,] 6 14 22 3
## [7,] 7 15 23 4
## [8,] 8 16 24 4
reshape(transform(df,id=ave(code,code,FUN=seq_along)),dir='w',timevar='code')[-1];
## a.1 b.1 c.1 a.2 b.2 c.2 a.3 b.3 c.3 a.4 b.4 c.4
## 1 1 9 17 3 11 19 5 13 21 7 15 23
## 2 2 10 18 4 12 20 6 14 22 8 16 24
[?如何使一個偉大的[R重複的例子(http://stackoverflow.com/questions/5963269/how-to-make-a-great -r-reproducible-example) – zx8754
看起來你在數據框中有一些列表。如果你可以顯示一些例子和預期的結果,那就更容易了 – akrun
'''df = do.call(cbind,split(df [, - ncol(df)],df $ NameOfColumn4Here))'工作。 – Vlo