根据列重新排列数据帧的列意思是
我有一个数据框,我想根据列平均值重新排序。我想通过减少列重新排序意味着根据列重新排列数据帧的列意思是
SNR SignalIntensity ID
1 1.0035798 6.817374 109
2 11.9438978 11.545993 110
4 3.2894878 9.780420 112
5 4.0170266 9.871984 113
6 1.6310523 9.078186 114
7 1.6405415 8.228931 116
8 1.6625413 8.043536 117
9 0.8489116 6.179346 118
10 7.5312260 10.558180 119
11 7.2832911 10.474533 120
12 0.5732577 4.157294 121
14 0.8149754 6.045174 124
我用下面的代码
means <- colMeans(df) ## to get mean
df <- df[,order(means)] ## to reorder
得到列mean
和order
,但我得到的列增加的平均,相反我利益。我应该怎么做递减列order
重新排序意味着
预期输出
ID SignalIntensity SNR
1 109 6.817374 1.0035798
2 110 11.545993 11.9438978
4 112 9.780420 3.2894878
5 113 9.871984 4.0170266
6 114 9.078186 1.6310523
7 116 8.228931 1.6405415
8 117 8.043536 1.6625413
9 118 6.179346 0.8489116
10 119 10.558180 7.5312260
11 120 10.474533 7.2832911
12 121 4.157294 0.5732577
14 124 6.045174 0.8149754
的默认设置是decreasing=FALSE
。我们可以改变,要TRUE
df[order(means, decreasing=TRUE)]
或者得到的“手段”
df[order(-means)]
:) :)谢谢... –
@AaghazHussain没问题。您可以在'?order'中查看更多详细信息。 – akrun
顺便说一下,使用'data.table'的开发版本,您现在可以通过引用*订购数据帧,而无需转换为数据表。使用类似'setcolorder(df,order(-means))' –
我建议看看[这里](http://stackoverflow.com/负值的
order
问题/ 1296646 /如何到排序-A-数据帧逐列式-R)。第一个Google几乎击中了任何“排序”/“顺序”和“r”变体。 –