调用时处理 R 中的 NA as.numeric

Handle NA in R when calling as.numeric

我有一个格式如下的向量:

> test <- c("3", "5", "?", "7")
> test <- as.numeric(test)
> test
[1] 3 5 NA 7

是否可以指定调用 as.numeric 时缺失值会发生什么情况?我想改用其他值的平均值、中位数或任何其他合适的计算方法。

你所要求的几乎不可能。如果要用平均值替换值,则必须先读取所有值。 但是,您可以在之后修复它:

test[is.na(test)] <- mean(test, na.rm=TRUE)