如何总结二项式 GLM 输出?

机器算法验证 方差分析 广义线性模型
2022-04-06 09:44:21

我有一个二项式 GLM:

all.fit <-  glm(Presence/Total~Season*ToD*Site, family = binomial, weights = Total, data = all.dt)

Call:  glm(formula = Presence/Total ~ Season * ToD * Site, family = binomial, 
    data = all.dt, weights = Total)

Coefficients:
                         (Intercept)                          SeasonSpring  
                            -4.66074                               0.60478  
                        SeasonSummer                          SeasonWinter  
                            -0.82682                               1.26868  
                              ToDDay                               ToDDusk  
                             0.09865                               2.48420  
                            ToDNight                             SiteKawau  
                             2.65294                               3.09495  
                          SiteNoises                        SiteTawharanui  
                             3.48048                               2.94694  
                        SiteTiritiri                   SeasonSpring:ToDDay  
                             3.25976                               0.90540  
                 SeasonSummer:ToDDay                   SeasonWinter:ToDDay  
                             2.16685                              -0.12465  
                SeasonSpring:ToDDusk                  SeasonSummer:ToDDusk  
                            -2.78750                              -1.52114  
                SeasonWinter:ToDDusk                 SeasonSpring:ToDNight  
                            -0.90286                              -1.66162  
               SeasonSummer:ToDNight                 SeasonWinter:ToDNight  
                            -1.85826                              -0.21758  
              SeasonSpring:SiteKawau                SeasonSummer:SiteKawau  
                            -0.67217                               1.24760  
              SeasonWinter:SiteKawau               SeasonSpring:SiteNoises  
                            -1.68237                              -0.79023  
             SeasonSummer:SiteNoises               SeasonWinter:SiteNoises  
                             0.42570                              -0.73055  
         SeasonSpring:SiteTawharanui           SeasonSummer:SiteTawharanui  
                            -0.25773                               1.32456  
         SeasonWinter:SiteTawharanui             SeasonSpring:SiteTiritiri  
                            -0.51055                              -0.51381  
           SeasonSummer:SiteTiritiri             SeasonWinter:SiteTiritiri  
                             0.95804                              -1.29898  
                    ToDDay:SiteKawau                     ToDDusk:SiteKawau  
                             0.70933                              -2.35320  
                  ToDNight:SiteKawau                     ToDDay:SiteNoises  
                            -5.33351                               0.27852  
                  ToDDusk:SiteNoises                   ToDNight:SiteNoises  
                            -2.53814                              -4.04432  
               ToDDay:SiteTawharanui                ToDDusk:SiteTawharanui  
                            -0.16455                              -2.76975  
             ToDNight:SiteTawharanui                   ToDDay:SiteTiritiri  
                            -2.62701                               0.81969  
                ToDDusk:SiteTiritiri                 ToDNight:SiteTiritiri  
                            -2.24361                              -4.14062  
       SeasonSpring:ToDDay:SiteKawau         SeasonSummer:ToDDay:SiteKawau  
                            -0.19831                              -1.61316  
       SeasonWinter:ToDDay:SiteKawau        SeasonSpring:ToDDusk:SiteKawau  
                             0.57193                               2.48229  
      SeasonSummer:ToDDusk:SiteKawau        SeasonWinter:ToDDusk:SiteKawau  
                             1.37786                               0.81702  
     SeasonSpring:ToDNight:SiteKawau       SeasonSummer:ToDNight:SiteKawau  
                             1.41405                               2.06227  
     SeasonWinter:ToDNight:SiteKawau        SeasonSpring:ToDDay:SiteNoises  
                             0.08689                              -0.28007  
      SeasonSummer:ToDDay:SiteNoises        SeasonWinter:ToDDay:SiteNoises  
                            -1.48112                              -0.06044  
     SeasonSpring:ToDDusk:SiteNoises       SeasonSummer:ToDDusk:SiteNoises  
                             1.93847                               0.63232  
     SeasonWinter:ToDDusk:SiteNoises      SeasonSpring:ToDNight:SiteNoises  
                             0.83278                               0.69621  
    SeasonSummer:ToDNight:SiteNoises      SeasonWinter:ToDNight:SiteNoises  
                             0.06911                               0.48690  
  SeasonSpring:ToDDay:SiteTawharanui    SeasonSummer:ToDDay:SiteTawharanui  
                            -0.23150                              -1.96624  
  SeasonWinter:ToDDay:SiteTawharanui   SeasonSpring:ToDDusk:SiteTawharanui  
                             0.43487                               2.04614  
 SeasonSummer:ToDDusk:SiteTawharanui   SeasonWinter:ToDDusk:SiteTawharanui  
                             0.59597                               0.73280  
SeasonSpring:ToDNight:SiteTawharanui  SeasonSummer:ToDNight:SiteTawharanui  
                             1.02467                               1.19957  
SeasonWinter:ToDNight:SiteTawharanui      SeasonSpring:ToDDay:SiteTiritiri  
                            -0.16571                              -0.48960  
    SeasonSummer:ToDDay:SiteTiritiri      SeasonWinter:ToDDay:SiteTiritiri  
                            -1.63190                               0.35354  
   SeasonSpring:ToDDusk:SiteTiritiri     SeasonSummer:ToDDusk:SiteTiritiri  
                             1.77115                               0.79347  
   SeasonWinter:ToDDusk:SiteTiritiri    SeasonSpring:ToDNight:SiteTiritiri  
                             0.48411                               1.51686  
  SeasonSummer:ToDNight:SiteTiritiri    SeasonWinter:ToDNight:SiteTiritiri  
                             1.27621                               0.77385  

Degrees of Freedom: 22998 Total (i.e. Null);  22919 Residual
Null Deviance:      105700 
Residual Deviance: 63170    AIC: 87340

然后我做了一个方差分析:

> anova(all.fit,test = "Chisq")
Analysis of Deviance Table

Model: binomial, link: logit

Response: Presence/Total

Terms added sequentially (first to last)


                Df Deviance Resid. Df Resid. Dev  Pr(>Chi)    
NULL                            22998     105714              
Season           3   1005.8     22995     104709 < 2.2e-16 ***
ToD              3  16404.9     22992      88304 < 2.2e-16 ***
Site             4   7664.5     22988      80639 < 2.2e-16 ***
Season:ToD       9   2793.5     22979      77846 < 2.2e-16 ***
Season:Site     12   3890.0     22967      73956 < 2.2e-16 ***
ToD:Site        12   9804.5     22955      64151 < 2.2e-16 ***
Season:ToD:Site 36    981.0     22919      63170 < 2.2e-16 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

在这个例子中,所有的交互都是重要的。但是,我不想在我的报告中报告大量重要的因素组合。既然我想如果交互很重要,那么单一的影响并不重要?我怎样才能更简单地说明我的发现的重要性?

我可以使用 anova(all.fit) 的输出吗?如果我这样做了,我会报告什么?

2个回答

您拥有所有分类变量,它们都嵌套在顶层三向交互中。确保您了解默认情况下分类变量的编码方式以及标准输出的含义(请参阅:此处此处)。在 R 中, 的输出summary(model)将不同于anova(model)后者将输出偏差表的顺序分析(类型 I,请参见:此处(因为您有 GLM)。通常,这两者之间的 p 值会有所不同(请参阅:here),尽管在您的情况下,输出实际上并不包括作为一个整体的任何变量的测试(再次,阅读变量的编码方式并提出)。一般来说,summarydrop1(model, test="LRT")会更好地符合人们的直觉,但是由于您只有分类变量都嵌套在三向交互中,drop1因此只会显示交互的 p 值,这与anova. 碰巧的是,这确实是您需要的唯一 p 值。任何其他 p 值并不真正意味着人们认为他们的意思。

之后,您将拥有 3x3x4=36 个关卡组合。我会简单地用预测的平均值制作一个表格,或者用一个图(如点图或条形图)表示平均值。您需要以这样一种方式对单元格/点/条进行排序,以便方便地指出感兴趣的比较。

如果您想保留当前的演示文稿,则必须至少包含第三个交互项。如果你不能减少它,那么减少任何较低级别的交互项都是没有意义的。要测试时间的重要性,您可以从模型中完全删除时间,然后从一个模型到另一个模型进行测试。季节和地点类似。

如果您的变量时间、地点、季节都是离散的,您可以将它们组合成一个新变量并使用方差分析,以表明并非所有组都可以视为一个。然后,您可以在没有时间、没有地点和没有季节的情况下测试简化为模型,以分别考虑它们。我知道这可能不是您正在寻找的答案,但我认为这是最简单的解释解决方案。

我希望它能回答你的问题。