返回行索引的向量,该向量对应于矩阵或data.table中每行的最大值

时间:2016-12-06 14:19:59

标签: r matrix data.table indices

这有点令人气愤。我有一个矩阵(或data.table):

 effCF
effTKA  0  2000     4000      6000       8000     10000
  0     0 50000 68000.00 53999.997   7985.823 -62082.87
  2000  0 46000 60000.00 41999.966  -8048.204 -68108.25
  4000  0 42000 52000.00 29999.712 -24000.000 -69681.11
  6000  0 38000 44000.00 17998.000 -38871.369 -69957.42
  8000  0 34000 36000.00  5989.368 -49666.295 -69995.20
  10000 0 30000 27999.98 -6036.153 -54486.601 -69999.53

行对应'effTKA',列对应于effCF。尺寸名称为0,2000,4000等。

我想要做的是返回两个数字向量(或2x矩阵): 1)列索引对应于每行的最大值,和 2)列索引对应于最接近零但不对应于第一列的每一行的值。

所以,在这个例子中我想得到:

[1] 4000 4000 4000 4000 4000 2000
[1] 8000 8000 8000 6000 6000 6000

我需要在较大的表上执行此操作。 我也有一个相应的问题,我需要在另一个矩阵上做相同的操作,但找到对应于每列最大值的行索引。

我知道如何使用which.max手动完成此操作,但我似乎无法弄清楚如何自动完成。

非常感谢任何帮助。

干杯。

0 个答案:

没有答案