1) Вы можете использовать функцию which()
, чтобы найти индекс наименьшего значения в первом столбце.Вы предоставляете which()
логический объект (в данном случае, векторизованный равный тест).Предположим, что ваша матрица привязана к m
:
ind = which(m[,'Week1'] == min(m[,'Week1']))
Затем вы можете использовать индекс, чтобы получить имя строки, совпадающее с логическим, используя rownames()
:
day = rownames(m)[ind]
2) По сути, это то же самое, за исключением того, что вы будете ожидать вектора индексов, а не одного индекса.Снова используйте which()
, чтобы найти индексы, которые соответствуют желаемому логическому выражению:
inds = which(m$Week2 < 30)
days = rownames(m)[inds]