Вменение средних значений для НС - PullRequest
0 голосов
/ 18 июня 2019

Я пытаюсь провести некоторую очистку данных. Мои данные включают в себя вопросы опроса, на которые ответили респонденты по шкале от 1 до 5 (данные типа фактора). В моем наборе данных было несколько АН. У меня 49 переменных. Теперь я хочу вменять АН в каждом столбце медианой этого столбца.

Я пытался преобразовать данные в числовые, чтобы получить медианы, и после этого я попытался преобразовать список в массив данных, но это не сработало.

# Replacing NAs with median
# data.class(data3$column)
data4 <- lapply(data3,as.numeric)
median(data4$ER_ALLVIS)

# Replacing NAs with median
data5 %>% 
  mutate_all(~ifelse(is.na(.), median(., na.rm = TRUE), .))

я хочу вменять АН в каждом столбце медианой этого столбца.

1 Ответ

0 голосов
/ 18 июня 2019

В то время как вменение с использованием среднего или медианы не является наилучшим подходом для любой области воображения, на практике это очень распространено. Если вы хотите воспользоваться этим подходом:

data %>% mutate_if(is.factor, function(x) replace(x, is.na(x), median(as.numeric(as.character(x)),na.rm = TRUE)))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...