Я хочу заменить NA на 0 в 20 столбцах. Я нашел этот подход для 2 столбцов, однако, я думаю, это не оптимально, если количество столбцов равно 20. Есть ли альтернативное и более компактное решение?Как заменить NA на 0 в 20 столбцах?
mydata[,c("a", "c")] <-
apply(mydata[,c("a","c")], 2, function(x){replace(x, is.na(x), 0)})
ОБНОВЛЕНИЕ: Для простоты позволяет принимать эти данные с 8 столбцов и замещающих ВПЛ в столбцах B, C, E, F и D
a b c d e f g d
1 NA NA 2 3 4 7 6
2 g 3 NA 4 5 4 Y
3 r 4 4 NA t 5 5
Результат должен быть такой:
a b c d e f g d
1 0 0 2 3 4 7 6
2 g 3 NA 4 5 4 Y
3 r 4 4 0 t 5 5
после некоторых данных для тестирования. –
Просто выполните 'cols <- c (" b "," c "," e "," f "); mydf [cols] <- replace (mydf [cols], is.na (mydf [cols]), 0) '. – A5C1D2H2I1M1N2O1R2T1
У вас действительно есть две колонки 'd'? –