是否可以将aggregate
函数中的结果排在一列?
例如,如果我有这个长聚合函数,并希望rank(desc)
Survived
:
aggregate(Survived ~ Fare2 + Pclass + Sex, data=train, FUN=function(x) {sum(x)/length(x)})
感谢您的回答!
答案 0 :(得分:1)
尝试:
result <- aggregate(Survived ~ Fare2 + Pclass + Sex, data=train, FUN=function(x) {sum(x)/length(x)})
result <- result[order(result$Survived,decreasing=T),]
这将按Survived
的降序为您提供结果。
或者,您可以添加排名列:
result <- aggregate(Survived ~ Fare2 + Pclass + Sex, data=train, FUN=function(x) {sum(x)/length(x)})
result$rank <- rank(result$Survived)
result <- result[order(result$rank,decreasing=T),]
BTW:您只是计算函数中的均值,因此您可以使用:
aggregate(Survived ~ Fare2 + Pclass + Sex, data=train, mean)