Я только что увидел то, что казалось совершенно хорошим вопросом, который был удален, и поскольку, как и исходный вопросник, я не мог найти дубликат, я отправляю его снова.Настройка NA в матрице с использованием другой логической матрицы
Предположим, что у меня есть простая матрица («m»), которую я хочу индексировать с помощью другой логической матрицы («i»), сохраняя исходную структуру матрицы неповрежденной. Что-то вроде этого:
# original matrix
m <- matrix(1:12, nrow = 3, ncol = 4)
# logical matrix
i <- matrix(c(rep(FALSE, 6), rep(TRUE, 6)), nrow = 3, ncol = 4)
m
i
# Desired output:
matrix(c(rep(NA,6), m[i]), nrow(m), ncol(m))
# however this seems bad programming...
Использование m[i]
возвращает вектор и не матрица. Каков правильный способ достичь этого?
Я принял намерение присвоить NA из указанного результата и из того, что оба его решение и мой помощник дали тот же результат. –