首页 > 解决方案 > 从 rms 包 ols() 函数获取残差诊断图

问题描述

如何从ols()对象中获取残差诊断图?通常如果使用glm()or lm(),我会这样做plot(lm()),但plot(ols())会出错。

我的代码是:

fit <- ols(y ~ rcs(x1,4)*x2, data=data, x=TRUE, y=TRUE)
plot(fit)

我收到的错误消息是

match.arg(type) 中的错误:“arg”应该是“普通”、“分数”、“dfbeta”、“dfbetas”、“dffit”、“dffits”、“hat”、“hscore”之一</p >

标签: rlinear-regressiondiagnostics

解决方案


费力(但灵活),您需要计算残差和估计值(使用resid()and fitted())并将它们绑定到您的数据框中,然后使用 ggplot2 或 lattice 等绘图包自己创建绘图。Harrell 在 p 的底部给出了示例。他的书第 2 版的第 153 节详细描述了这个包的使用。

作为一种快速而肮脏的替代方案,您可以使用常规函数(例如lm())拟合一个版本,plot()并将返回通常的诊断图。诸如此类的东西rcs()将适用于许多基本拟合功能。


推荐阅读