估算NA的中位数

时间:2019-06-18 12:22:03

标签: r categorical-data

我正在尝试进行一些数据清理。我的数据包括受访者回答的调查问题,评分范围为1到5(要素类型数据)。我的数据集中有几个NA。我有49个变量。现在,我想用该列的中位数来估算每列中的NA。

我试图将数据转换为数值以获取中位数,然后我尝试将列表转换为数据框,但这没有用。

# 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), .))

我想用该列的中位数来估算每列中的NA。

1 个答案:

答案 0 :(得分:0)

尽管用平均数或中位数进行插补并不是最好的方法,但在实践中却很常见。如果您希望采用这种方法:

data %>% mutate_if(is.factor, function(x) replace(x, is.na(x), median(as.numeric(as.character(x)),na.rm = TRUE)))