У меня есть данные:
test_df <- data.frame(x1 = c("a", "b", "c", NA, NA),
x2 = sample(1:5),
x3 = c(T, NA, F, T, NA),
x4 = c(NA, NA, 1, 2, 3),
stringsAsFactors = F)
colset1 <- c("x1", "x2", "x3")
colset2 <- c("x2", "x3", "x4")
фрейм данных и векторы, содержащие имена переменных.
Как проверить (лучше всего dplyr
), содержит ли какая-либо строка столбцов в векторе (colset
) какие-либо NA
s?
Ожидаемый ответ для colset1
- TRUE FALSE TRUE FALSE FALSE
, а для colset2
- FALSE FALSE TRUE TRUE FALSE
(лучше всего, если его можно изменить как новую логическую переменную, не имеет значения).
Альтернативный вопрос: как подсчитать NA
s в этих столбцах? Ожидаемый ответ для colset1
- 0 1 0 1 2
, а для colset2
- 1 2 0 0 1
Я пытался изменить ...ifelse(length(sum(is.na(vars(colset1)))) == 0)
, но чего-то все еще не хватало, это не сработало, и я потерялся в собственный код :)
Спасибо!