Есть ли способ заменить значение в Matrix на NA, используя только функцию apply - PullRequest
2 голосов
/ 26 сентября 2019

Я хочу заменить везде, где значение больше 8, на NA, используя только функцию «Применить» в матрице от 1 до 20

m <- matrix(c(1:10, 11:20), nrow = 5, ncol = 4)

Я пробовал apply(m, 1:2, function(x) x = replace_na(x, 0)) после обнуления значений (в зависимости от того, что былобольше 8) Второе, что я попробовал -

apply(m, 1:2, function(x) is.na(x) <- !x)

Третье, что я попробовал, -

apply(m, 1:2, function(x) replace_na(x>8))

Матрица должна иметь все значения как NA от 9 до 20

1 Ответ

4 голосов
/ 26 сентября 2019

Мы можем назначить с is.na

`is.na<-`(m, m > 8)
...