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