【发布时间】:2016-06-16 19:44:55
【问题描述】:
我有输入文件
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])
但我想获取列名而不是值。
【问题讨论】:
-
您始终可以使用 index() 和找到的值来返回您的值在行中的位置。应该做你想做的(如果你加1)
-
你能告诉我如何使用 index() 的确切代码行
-
您使用的是哪个包?这里的“应用”和“暗淡”是未知的。但是在标准 python 列表中: [10, 20, 15, 8].index(15) => 2
-
好吧,但它应该自动完成,因为我有 1000 个这样的,所以如何创建它
-
不要忘记考虑值可能不是唯一的。您不能只取倒数第二个排序值,因为它可能与最后一个排序值(即最大值)相同。
标签: r