Извлечь индекс для минимального значения в строке (исключить 0) - PullRequest
0 голосов
/ 10 сентября 2018

Я хочу извлечь номер индекса столбца, в котором строка [4, ] имеет наименьшее значение. Но 0 не должно быть включено. Например, в этой заданной матрице pos,

> pos
     [,1] [,2] [,3] [,4]
[1,]    1    0    1    1
[2,]    2    0    1    1
[3,]    9    0   10    8
[4,]   11    0   13   11

Я хочу иметь вывод, такой как

1 4

Потому что это 11 и самые низкие значения, или я могу даже просто указать 1 или 4.

1 Ответ

0 голосов
/ 10 сентября 2018
which(pos[4,]==min(pos[4,pos[4,]!=0]))

Не красиво, но получается. Сообщает номер столбца, в котором значение в строке 4 равно минимальному значению строки 4, исключая нули в этой строке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...