【问题标题】:Logistic regression (GLM) output: apa.reg.table逻辑回归 (GLM) 输出:apa.reg.table
【发布时间】:2020-08-06 22:38:45
【问题描述】:

我一直在使用逻辑回归并希望用完该报告 几个模型(“块”),所以我可以比较它们。

我发现 apa.reg.table 可以创建我希望看到的那种输出,但是,唉, 当我运行 glm 模型时,我收到错误消息。当我运行回归时没有这样的错误消息。我对通过百分比变化比较这些块模型特别感兴趣,这在常规回归中运行良好。

问题:

  1. 有什么方法可以运行带有逻辑回归的 apa.reg.table 吗?
  2. 如果没有,是否有人知道可以用来帮助我实现目标的任何软件包或技术?

...在研究问题时,我运行了 iris 数据库:

data(iris)

...然后运行一系列四个连续的逻辑回归:

#Logistic regression models
MODEL_A<-glm(species~sepal.len, data=iris,, family=binomial())
MODEL_B<-glm(species~sepal.len+sepal.wid, data=iris, family=binomial())
MODEL_C<-glm(species~sepal.len+sepal.wid+petal.len, data=iris, family=binomial())
MODEL_D<-glm(species~sepal.len+sepal.wid+petal.len+petal.wid, data=iris, family=binomial())

apa.reg.table(MODEL_A,MODEL_B,MODEL_C,MODEL_D)


...但我收到以下错误消息:

#Error in if (F.value < 0) stop("Your 'F.value' is not correctly specified.") : 
# argument is of length zero
#In addition: Warning messages:
#1: Unknown or uninitialised column: 'r.squared'. 
#2: Unknown or uninitialised column: 'p.value'.

...在常规回归分析中运行良好:

#regression models:
MODEL_B2<-lm(sepal.len~sepal.wid, data=iris)
MODEL_C2<-lm(sepal.len~sepal.wid+petal.len, data=iris)
MODEL_D2<-lm(sepal.len~sepal.wid+petal.len+petal.wid, data=iris)

#create table with regression models--no error messages:
apa.reg.table(MODEL_B2,MODEL_C2,MODEL_D2)

任何帮助将不胜感激。

【问题讨论】:

标签: r output glm


【解决方案1】:

你可以试试扫帚:

library(broom)

colnames(iris) =c("sepal.len","sepal.wid","petal.len","petal.wid","species")

MODEL_A<-glm(species~sepal.len, data=iris,, family=binomial())
MODEL_B<-glm(species~sepal.len+sepal.wid, data=iris, family=binomial())
MODEL_C<-glm(species~sepal.len+sepal.wid+petal.len, data=iris, family=binomial())
MODEL_D<-glm(species~sepal.len+sepal.wid+petal.len+petal.wid, data=iris, family=binomial())

您可以将它们放在一个列表中:

lapply(list(MODEL_A,MODEL_B,MODEL_C,MODEL_D),tidy)

或者:

library(dplyr)
library(purrr)

res = tibble(name=c("MODEL_A","MODEL_B","MODEL_C","MODEL_D"),
models=list(MODEL_A,MODEL_BMODEL_C,MODEL_D)) %>% 
mutate(coef=map(models,tidy),stats=map(models,glance))

`

然后:

res %>% unnest(coef)

res %>% unnest(stats)

【讨论】:

    猜你喜欢
    • 2014-06-20
    • 2015-04-26
    • 2018-08-11
    • 2012-02-25
    • 2017-03-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多