Вот проблема, с которой я столкнулся при использовании функции ifelse в присутствии NA.R Инструкция Ifelse, не работающая из-за NA
данных:
x=data.frame(rbind(c(1,1,0),c(0,NA,1)))
colnames(x)=c("a","b","c")
цель: создать столбец "тест", который изменяет значение 0, если а или б равен 1. Если ни или б равен 1, тест = с
проблема: при Ь = НС, которое не равно 1, тест = NA, #when она должна быть 1.
работает правильно для строки 1, но не для строки 2.
x=mutate(x,
test=ifelse((a==1|b==1),0,c))
> x
a b c test
1 1 1 0 0
2 0 NA 1 NA
Любые предложения о том, как их исправить?
'NA' является отсутствием значения. Таким образом, вы можете обновить свои условия, сказав, что произойдет, если a или b является NA или создать процесс, который заменяет NA с фиксированным значением, прежде чем вы выполните 'ifelse'. – AntoniosK