我现在正在摆弄这一段时间,但找不到合理的解决办法。
我想按降序排序data.frame的所有列。
示例数据:
CustomData <- data.frame(Value1=rnorm(100,1,2), Value2=rnorm(100,2,3),
Value3=rexp(100,5), Value4=rexp(100,2))
适用于一栏:
CustomData[order(CustomData$Value1, decreasing=FALSE), ]
如何以合理的方式按递减/递增顺序对所有列数据进行排序? THX。
我也在其他地方尝试了类似的东西,但是没有按照规定工作。
CustomData[do.call(order, as.list(CustomData)),]
答案 0 :(得分:12)
CD.sorted <- apply(CustomData,2,sort,decreasing=F)
答案 1 :(得分:0)
使用do.call更快。
对于升序。
CustomData[do.call(order, CustomData),]
对于降序,语法要复杂一些,因为我们必须传递'decreasing'参数。
CustomData[do.call(order, c(CustomData, list(decreasing=TRUE))),]