我有一个包含 20 个变量的数据集,我需要使用其中的 10 个变量来查找第一个、第二个、第三个……第 n 个最大值。
变量是x1
to x10
x1 x2 x3 x4 x5 x6 x7 x8 x9 x10
1 2 0 3 4 5 6 7 8 5
2 1 5 4 6 4 2 1 0 3
我的预期输出应该是:
max1 max2 max3 max4 max5 max6 max7 max8 max9 max10
x9 x8 x7 x6 x10 x5 x4 x2 x1 x3
x5 x3 x4 x6 x10 x1 x7 x2 x8 x9
我有100个观察。我提供的示例只有一行。
基于艾蒂安的评论,但对于大型数据集来说效率低下。
foo <- function(x){
y <- order(x, decreasing = TRUE)
y <- paste0("x", y)
}
t(apply(dat, 1, foo))
# [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
# [1,] "x9" "x8" "x7" "x6" "x10" "x5" "x4" "x2" "x1" "x3"
# [2,] "x5" "x3" "x4" "x6" "x10" "x1" "x7" "x2" "x8" "x9"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)