Я вменяю пропущенные переменные.Сначала кажется, что эта функция работает:
# Replace NA with "None"
vars_to_none = c("Alley", "BsmtQual", "BsmtCond", "BsmtExposure", "BsmtFinType1", "BsmtFinSF1", "BsmtFinType2", "FireplaceQu", "GarageType", "GarageYrBlt", "GarageFinish", "GarageQual", "GarageCond", "PoolQC", "Fence", "MiscFeature", "MasVnrType")
sapply(combi %>% select(vars_to_none), function(x) x = ifelse(is.na(x), "None", x))
Вывод: кадр данных с "None" в ранее выбранных точках NA.Вот часть вывода.
Переулок BsmtQual BsmtCond BsmtExposure BsmtFinType1 BsmtFinSF1 BsmtFinType2
[1,] "None" "Gd" "TA" "No" "GLQ" "706" "Unf"
[2,] "None" "Gd" "TA" "Gd" "ALQ" "978" "Unf"
[3,] "None" "Gd" "TA" "Mn" "GLQ" "486" "Unf"
[4,] "None" "TA" "Gd" "No" "ALQ" "216" "Unf"
Пока все хорошо.
Но когда я проверяю для NA,
which(is.na(combi$Alley))
... Я получаю более 2000 записей.head () показывает то же самое:
head(combi$Alley)
[1] NA NA NA NA NA NA
Я попытался сохранить функцию sapply в combi, что вызвало ошибку. Я не знакомс.
combi <- sapply(combi %>% select(vars_to_none), function(x) x = ifelse(is.na(x), "None", x))
head(combi$Alley)
Ошибка в комбинированной $ Alley: оператор $ недопустим для атомных векторов
> which(is.na(combi$Alley))
Ошибка в комбинированной $ Alley: оператор $ недопустим для атомных векторов
Как я могу получить комбинированный фрейм данных для постоянного хранения замены NA на "None"?