ggplot2::autoplot
为线性模型(lm对象)绘制了一组漂亮的图形。但是,当数据缺少值并且我使用na.action = na.exclude
(因为我想填充NA
来保存残差)时,autoplot
就会失败。
library(ggplot2)
df <- mtcars
df [2, 2] <- NA
mod <- lm(data = df, formula = mpg ~ cyl, na.action = na.exclude)
df$res <- residuals(mod)
ggplot2::autoplot(which = 1:6, object = mod)
# Error in `$<-.data.frame`(`*tmp*`, res, value = c(0.382245430809409, -3.56788511749347, :
# replacement has 31 rows, data has 32
如果na.action
仍然有效。看来它不会用na.exclude
填充缺失值。
有没有解决的办法?还是其他可以给出相同图形的函数?