1

我正在尝试首先使用lrmfrom package运行逻辑回归RMS。我的模型适用于glm但不适用于lrm.

model1 <- lrm( Outcome30Days ~ ISS1 + ISS2 + as.factor(GCSgr)+ 
as.factor(Gender)*as.factor(agegr),data=sub2, x=T, y=T, se.fit=T)

如果 ISS1ISS2被删除,模型会运行,但对于这两个变量,它不会。错误信息:

Unable to fit model using “lrm.fit”

我需要使用 运行它lrm,因为validate使用引导程序的包(显然)只能使用lrm. 任何帮助,将不胜感激。

4

1 回答 1

1

lrm 对自变量之间相关性的容忍度低于 glm。如果您的模型使用 glm 运行并在删除一些变量时使用 lrm 运行,这可能是问题所在。幸运的是,您可以使用 tol 参数调整容差。默认情况下 tol=1e-7。尝试将其更改为 tol=1e-9。代码如下所示:

model1 <- lrm( Outcome30Days ~ ISS1 + ISS2 + as.factor(GCSgr)+ 
as.factor(Gender)*as.factor(agegr),data=sub2, x=T, y=T, se.fit=T, tol=1e-9)

这比乱用惩罚要好,因为改变惩罚会改变你的对数似然并可能影响你的结果。

于 2015-11-20T01:44:38.260 回答