使用replace_na [duplicate]将Na替换为列的平均值

wbrvyc0a  于 2023-05-26  发布在  其他
关注(0)|答案(1)|浏览(136)

此问题已在此处有答案

Replace missing values with column mean(14个回答)
2天前关闭。
这是我的代码:

data <- data.frame(x = c(1, 2, NA, 4, 5),
                    y = c(6, 7, NA, 9, 10))

# Calcular a média de todas as colunas, incluindo NA's
mean <- colMeans(dados, na.rm = TRUE)

# Exibir o resultado
mean

现在使用replace_na函数将Na替换为上面计算的平均值:

data %>% replace_na(list(mean))

我需要使用replace_na()函数有帮助吗?

798qvoo8

798qvoo81#

replace_na()可以工作,但我推荐sapply():

data <- data.frame(x = c(1, 2, NA, 4, 5),
                   y = c(6, 7, NA, 9, 10))

data[is.na(data)] <- sapply(data, function(x) mean(x, na.rm = TRUE))

print(data)

相关问题