我有输入文件
c = structure(c(10, 22, 40, 20, 25, 22, 15, 10, 45, 8, 13, 59), .Dim = 3:4)
[1] [2] [3] [4]
10 20 15 8
22 25 10 13
40 22 45 59
我希望得到像这样的输出 如果存在第二高的值,则应将该列名称打印到行
[]
3
1
3
我能够通过
提取第二高的值apply(c, 1, function(i) sort(i)[ dim(c)[2]-1])
但我想获取列名而不是值。
答案 0 :(得分:1)
尝试:
> apply(c, 1, order)[3, ]
[1] 3 1 3
>
或如果您有超过4列apply(c, 1, order)[ncol(c)-1, ]
。
顺便说一句,最好不要使用现有函数的名称命名变量,例如c
。