【问题标题】:GAM residuals in two distinct lines - R "mgcv"两条不同行中的 GAM 残差 - R“mgcv”
【发布时间】:2019-02-11 01:46:22
【问题描述】:

我正在尝试使用带有 mgcv 包的 r 上的二项式数据 (link=logit) 运行 GAM。这是为了尝试使用存在 (1) 和不存在 (0) 数据作为响应和一组环境变量作为预测变量来描述宽吻海豚的栖息地使用情况。

我使用的代码似乎工作正常,但是当我绘制残差时,我留下了两条不同的线。我的理解是,在绘制残差时,线条周围应该有一个均匀的散布 - 但事实并非如此 - 任何关于我应该寻找什么的指导将不胜感激

这是使用 2 个变量的示例的输出:

m1<-gam(Presence~s(Dist_Ent_k,k=8)+s(Dist_wall_m,k=5), data=mydata, 
        family = binomial(link = "logit"), weights=resp.weight)

summary(m1)

Family: binomial 
Link function: logit 

Formula:
Presence ~ s(Dist_Ent_k, k = 8) + s(Dist_wall_m, k = 5)

Parametric coefficients:
            Estimate Std. Error z value Pr(>|z|)   
(Intercept) -0.30155    0.09839  -3.065  0.00218 **

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(Dist_Ent_k)  2.658  3.333 16.411  0.0015 **
s(Dist_wall_m) 1.389  1.680  0.273  0.7434   

Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

R-sq.(adj) =  0.0359   Deviance explained = 3.42%
UBRE = -0.76828  Scale est. = 1         n = 2696

plot(m1,shade=T,scale = 0,residuals = TRUE)]

提前谢谢你!

【问题讨论】:

    标签: r gam mgcv


    【解决方案1】:

    您绘制的是部分残差,而您看到两个不同的波段仅仅是您的数据是二元或伯努利观测的结果。

    如果您绘制偏差残差与线性预测变量,您也会看到这一点,只是更极端;试试

    layout(matrix(1:4, ncol = 2, byrow = TRUE))
    gam.check(m1)
    layout(1)
    

    由于数据的极端性质,伯努利模型(单次试验的二项式)的模型诊断很困难 - 响应只是 0 或 1。您可以更轻松地进行诊断,例如,如果您将数据汇总到某种方式使您不再有m=1 试用,而是m=M;假设您的数据是按空间排列的,您可以在该区域上创建一个更大的网格,并为每个网格中的点聚合 0 和 1,保留每个网格中有多少点的信息(为每个聚合二项式提供 M计数)。

    否则,我认为绘制此类模型的部分残差或偏差残差不会有什么好处。来自gam.check() 的集合中的 QQ 图,特别是如果您添加rep = 100(或一些这样的数字)对于检查分布假设更有用,因为它允许创建一个对此类模型具有良好属性的参考带;请参阅?qq.gam 了解仅创建 QQ 图所需的功能/信息。

    【讨论】:

    • 谢谢你,我确实认为它与二进制响应有关,但是在查看其他具有二进制响应的 GAM 时,我在部分残差中没有看到相同的模式。关于gam.checkqq.gam,当我在我的模型中包含权重时,我收到以下错误:Error in dm[, i] &lt;- sort(residuals(object, type = type)) : number of items to replace is not a multiple of replacement length In addition: Warning message: In qbinom(p, wt, mu) : NaNs produced 当我省略权重时不会发生这种情况 - 但是模型确实发生了变化。
    • 嗯,重量是多少?
    • 缺席地点约为 0.1,出席地点约为 1
    • 哦,你试图解释 0 和 1 的比例不平衡?听起来可能值得向 Simon Wood(mgvc 的维护者发送电子邮件,并附上一个可重复的示例,作为我对 QQ 图和其他图的实现方式的理解,函数应该接受模型公式中的权重。跨度>
    • 是的,没错,我遵循不同的建议,即模型具有更大比例的 0 更具有代表性,但您需要用相应的权重来考虑这一点 - 感谢您的帮助!跨度>
    猜你喜欢
    • 2016-01-07
    • 1970-01-01
    • 1970-01-01
    • 2020-03-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多