2012-04-18 120 views
1

我正在努力在我的數據集中對列進行排序。我要重新排序的方式,可以在下面的例子中顯示:更改列的順序

,我有以下數據:

dd = data.frame("AssignedA"=1:2, "AverageA"=1, "AssignedB"=1, "AverageB"=1, 
    "AssignedC"=1, "AverageC"=1, "ValueA"=1, "ValueB"=1, "ValueC"=1) 

對於一個簡單的概述,我想通過以下方式進行排序的列:

分配一個 - 指定乙 - 分配ç - 平均 - 數據b - 平均C-值A - B值 - 值C

如何做到這一點?我在前面發佈的問題中找不到解決方案。

回答

2

只是保持簡單並使用seq來創建列的順序。首先,(你應該在你的問題做到這一點),創建一些虛擬的數據:

dd = data.frame("AssignedA"=1:2, "AverageA"=1, "AssignedB"=1, "AverageB"=1, 
    "AssignedC"=1, "AverageC"=1, "ValueA"=1, "ValueB"=1, "ValueC"=1) 

然後就重新排序像往常一樣:

dd[,c(seq(1,6,2), seq(2,6,2), 7:9)] 

這裏,[]命令指定的順序:

R> c(seq(1,6,2), seq(2,6,2), 7:9) 
[1] 1 3 5 2 4 6 7 8 9 
+0

這真的很簡單..完美的作品! – 2012-04-18 08:54:15