是否等效于R中的SignifReg函数进行logit回归?

问题描述

我希望在R中运行一些相对简单的代码,以帮助根据logistic回归中的p值确定哪些自变量有意义。我知道SignifReg函数可以帮助确定lm对象的有意义的变量,但是是否存在用于logit的类似函数/程序包?谢谢!

SignifReg函数是SignifReg包的一部分,有关更多信息,请参见:https://www.rdocumentation.org/packages/SignifReg/versions/3.0/topics/SignifReg

解决方法

如果只需要p值,可以通过以下方法获取它们:

# building some data
df <- data.frame(response = rbinom(100,1,0.75),var1 = runif(100),var2 = rnorm(100),var3 = 1:100,var4 = rexp(100))
# making a model
mod <- glm(response ~ var1 + var2 + var3 + var4,data = df,family = "binomial")

您可以使用coef()来补充模型系数估计值,标准误差和p值。您可以专门要求第四列获取p值。

coef(summary(mod))[,4]
(Intercept)        var1        var2        var3        var4 
 0.05886951  0.21382708  0.41254249  0.16239709  0.80457330 
,

软件包rms具有函数fastbw,该函数将模型作为逻辑模型,即coxph。它基于Lawless和Singhal(1978),“一阶近似比全向后选择具有更高的数值效率”。 例如:

Glmfullfit = Glm (Hypertension ~ .,family = binomial,data = mydata) #Glm from rms. 
fastbw(Glmfullfit,rule= 'p',type='individual',sls=.1) #retention pvalue = 0.1.         

在SAS中,等效代码为选择方法=向后(快速)[由于SAS云,我未尝试使用此代码)。由于fastbw中使用的方法,请勿使用来自fastbw结果的系数。取最后的幸存变量,并用glm拟合系数和其他参数。