Я переписываю две двоичные переменные в новую переменную, так что любые 1s в первой переменной принимают 0 в новой, а все цифры во второй переменной сохраняются. В приведенном ниже коде представлена логика, которую я хотел бы создать. Однако, когда я запускаю этот код, перекодировка с использованием ifelse() просто воссоздает x2 без включения первой строки ifelse(), которая использует x1 1s как 0. Мысли?перекодировать переменные с NA с ifelse() в R
set.seed(123)
x1 <- sample(c(0,1,NA), 20, replace = TRUE)
x2 <- sample(c(0,1,NA), 20, replace = TRUE)
recode <- ifelse(x1 == 1, 0, NA)
recode <- ifelse(x2 == 1, 1, recode)
recode <- ifelse(x2 == 0, 0, recode)
table(recode); table(x2)
Благодаря