Если нам нужен индекс по столбцам, используйте apply
с MARGIN=2
и применяйте which.min
apply(m1, 2, which.min)
#[1] 3 3
Если необходим 1 столбец за раз:
apply(as.matrix(m1[,1, drop = FALSE]), 2, which.min)
Если мы проверим ?Extract
, по умолчанию используется
x [i, j, ..., drop = TRUE]
drop - Для матриц и массивов. Если TRUE, результат приводится к минимально возможному измерению (см. Примеры). Это работает только для извлечения элементов, а не для замены. Для получения более подробной информации смотрите описание.
Чтобы избежать потери размеров, используйте drop = FALSE
Если нам нужны минимальные значения каждой строки
do.call(pmin, as.data.frame(m1))
или
apply(m1, 2, min)
Или
library(matrixStats)
rowMins(m1)
данные
m1 <- matrix(6:1,nrow=3,ncol=2)