is.na
может использоваться для создания логического выражения для элементов NA
вместо ==
.Кроме того, предупреждение связано с тем, что мы используем if/else
, а не ifelse
, поскольку if/else
не векторизовано.Простой вариант - создать логическое выражение с is.na
и привести его к двоичному с помощью as.integer
, чтобы TRUE -> 1
и FALSE ->0
y$comp <- as.integer(is.na(y$first_completed_date))