替换“?”平均数

Replacing "?" with the mean

我有一个数据集,其中有一列有很多问号“?”,而不是 NA。如何用同一列中数字的平均值替换该列?

首先将列转换为数字列。 ?s 将被转换为 NA。然后计算剩余的均值,同时排除 NA(即 na.rm=TRUE)并用该均值

填充 NA 位置
df$coln <- as.numeric(df$coln)
df$coln[is.na(df$coln)] <- mean(df$coln, na.rm=TRUE)