我正在使用gam
该mgcv
软件包来分析包含24个条目的数据集:
ran f1 f2 y
1 3000 5 545
1 3000 10 1045
1 10000 5 536
1 10000 10 770
2 3000 5 842
2 3000 10 2042
2 10000 5 615
2 10000 10 1361
3 3000 5 328
3 3000 10 1028
3 10000 5 262
3 10000 10 722
4 3000 5 349
4 3000 10 665
4 10000 5 255
4 10000 10 470
5 3000 5 680
5 3000 10 1510
5 10000 5 499
5 10000 10 1422
6 3000 5 628
6 3000 10 2062
6 10000 5 499
6 10000 10 2158
数据具有两个固定效应(f1
和f2
)和一个随机效应(ran
)。相关数据为y
。因为相关数据y
代表计数并且分散过度,所以我使用负二项式模型。
该gam
模型及其summary
输出如下:
library(mgcv)
summary(gam(y ~ f1 * f2 + s(ran, bs = "re"), data = df2, family = nb, method = "REML"))
Family: Negative Binomial(27.376)
Link function: log
Formula:
y ~ f1 * f2 + s(ran, bs = "re")
Parametric coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) 5.500e+00 3.137e-01 17.533 < 2e-16 ***
f1 -3.421e-05 3.619e-05 -0.945 0.345
f2 1.760e-01 3.355e-02 5.247 1.55e-07 ***
f1:f2 2.665e-07 4.554e-06 0.059 0.953
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Approximate significance of smooth terms:
edf Ref.df Chi.sq p-value
s(ran) 4.726 5 85.66 <2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
R-sq.(adj) = 0.866 Deviance explained = 93.6%
-REML = 185.96 Scale est. = 1 n = 24
的Wald检验summary
对于f2
(P = 1.55e-07
)具有非常高的意义。但是,当我f2
通过使用方差分析比较两个不同的模型来检验重要性时,我得到了截然不同的结果:
anova(gam(y ~ f1 * f2 + s(ran, bs = "re"), data = df2, family = nb, method = "ML"),
gam(y ~ f1 + s(ran, bs = "re"), data = df2, family = nb, method = "ML"),
test="Chisq")
Analysis of Deviance Table
Model 1: y ~ f1 * f2 + s(ran, bs = "re")
Model 2: y ~ f1 + s(ran, bs = "re")
Resid. Df Resid. Dev Df Deviance Pr(>Chi)
1 14.843 18.340
2 16.652 21.529 -1.8091 -3.188 0.1752
f2不再重要。根据评估固定效果的建议,将模型从REML更改为ML。
如果保留了相互作用,则使用方差分析仍可以忽略f2的影响:
anova(gam(y ~ f1 + f2 + f1:f2 + s(ran, bs = "re"), data = df2, family = nb, method = "ML"),
gam(y ~ f1 + f1:f2 + s(ran, bs = "re"), data = df2, family = nb, method = "ML"),
test="Chisq")
Analysis of Deviance Table
Model 1: y ~ f1 + f2 + f1:f2 + s(ran, bs = "re")
Model 2: y ~ f1 + f1:f2 + s(ran, bs = "re")
Resid. Df Resid. Dev Df Deviance Pr(>Chi)
1 14.843 18.340
2 15.645 19.194 -0.80159 -0.85391 0.2855
对于这些方法中哪种更合适的建议,我将不胜感激。非常感谢!
的警告部分?anova.gam
说:
如果模型
a
和的b
区别仅在于不包含未惩罚成分(例如随机效应),则p的值anova(a,b)
不可靠,通常太低。
我猜想p值不可靠,但在这种情况下,您会遇到与预期相反的情况-p值要大得多。
但是,我认为您没有在比较正确的模型。除非您知道自己在做什么,否则在比较具有交互作用的模型时应遵守边际原则。
所以,我比较的主要效应的模型f1
,并f2
用一个模型,其中包括这些主要作用和它们之间的相互作用。
y ~ f1 * f2 + s(ran, bs = "re")
y ~ f1 + f2 + s(ran, bs = "re")
除非有什么要讲的,否则您不会告诉我们模型的设置方式,否则,您不应在不包含高阶项中包含的低阶项的情况下包括一个高阶项。例如,你有f1 + f1:f2
和f2
在第二次项被发现,但没有发现在模型中的第一阶项。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句