使用R的逻辑回归

jos*_*iti 3 statistics r logistics

我正在使用R运行逻辑回归,但我似乎无法获得许多有用的模型拟合统计数据.我正在寻找类似于SASS的指标:

http://www.ats.ucla.edu/stat/sas/output/sas_logit_output.htm

有谁知道我可以用什么(或什么包)来提取这些统计数据?

谢谢

42-*_*42- 5

当然glm,使用family ="binomial"参数是最常用于逻辑回归的函数.对比因素的默认处理是不同的.R使用治疗对比,SAS(我认为)使用总和对比.您可以在R-help上查看这些技术问题.在过去的十多年里,他们已经多次讨论过很多次.

我看到Greg Snow lrm在'rms'中提到过.它的优势在于"rms"方法套件中的其他几个函数的支持.我也会使用它,但学习rms包可能需要一些额外的时间.我没有看到可以创建类似SAS的输出的选项.

如果你想比较类似问题的包,那么UCLA StatComputing页面还有另一个资源:http://www.ats.ucla.edu/stat/r/dae/default.htm,其中SPSS中举例说明了大量方法,SAS,Stata和R.

  • 实际上,SAS也使用治疗对比; 区别在于它将最后一级作为参考级而不是第一级.您可以在R中使用`选项(对比= c("contr.SAS","contr.poly"))`来获得类似SAS的行为. (3认同)

Ben*_*ker 5

这是一个泊松回归的例子:

## from ?glm:
d.AD <- data.frame(counts=c(18,17,15,20,10,20,25,13,12),
      outcome=gl(3,1,9),
      treatment=gl(3,3))
glm.D93 <- glm(counts ~ outcome + treatment,data = d.AD, family=poisson())
Run Code Online (Sandbox Code Playgroud)

现在定义一个函数以使具有相同响应,族等的仅拦截模型适合,计算汇总统计信息,并将它们组合成表(矩阵).式.~1update下面命令的意思是"改装用相同的响应变量[通过在波浪的LHS上的点来表示]的模型,但只有一个截距项[由表示1在波浪的RHS]"

glmsumfun <- function(model) {
   glm0 <- update(model,.~1)  ## refit with intercept only
   ## apply built-in logLik (log-likelihood), AIC,
   ##  BIC (Bayesian/Schwarz Information Criterion) functions
   ## to models with and without intercept ('model' and 'glm0');
   ## combine the results in a two-column matrix with appropriate
   ## row and column names
   matrix(c(logLik(glm.D93),BIC(glm.D93),AIC(glm.D93),
           logLik(glm0),BIC(glm0),AIC(glm0)),ncol=2,
     dimnames=list(c("logLik","SC","AIC"),c("full","intercept_only")))
}
Run Code Online (Sandbox Code Playgroud)

现在应用功能:

glmsumfun(glm.D93)
Run Code Online (Sandbox Code Playgroud)

结果:

            full intercept_only
logLik -23.38066      -26.10681
SC      57.74744       54.41085
AIC     56.76132       54.21362
Run Code Online (Sandbox Code Playgroud)

编辑:

  • anova(glm.D93,test="Chisq")给出了包含df,偏差(= -2对数似然),残差df,残差偏差和似然比检验(卡方检验)p值的偏差表的顺序分析.
  • drop1(glm.D93)给出一个表格,其中包含每个单项删除的AIC值(df,deviances等); drop1(glm.D93,test="Chisq")另外给出LRT测试p值.