【问题标题】:NaNs produced when using aodml beta-binomial model in aods3 package在 aods3 包中使用 aodml beta-binomial 模型时产生的 NaN
【发布时间】:2020-08-03 14:39:57
【问题描述】:

当尝试使用 aodml 函数将 beta 二项式分布 GLM 与我自己的数据拟合时,我收到一条警告消息,指出产生了 NaN。当我尝试使用aods3 包示例中给出的数据集运行相同的函数时,我收到了相同的警告消息。

代码:

library(aods3)
data(orob2)
fm1<-aodml(cbind(m, n-m)~seed, data=orob2, family="bb")

Warning messages:
1: In lbeta(a, b): NaNs produced

我知道警告是由cbind(m, n-m) 引起的,但我不知道为什么或如何?任何想法,特别是奇怪的,因为这发生在示例数据中?我在这里遗漏了什么吗?

【问题讨论】:

    标签: r glm


    【解决方案1】:

    这里的问题是优化过程会沿途尝试分散参数的负值。你可以通过设置自己看到这个

    options(warn=2, error=recover)
    

    它指定将警告转换为错误,并且错误触发调试模式。完成此操作后,重新运行 aodml(...) 命令,选择第 4 帧,并打印传递给 dbetabinmnmuk 的值。你会看到k 是否定的。

    您可以通过设置phi.scale="log" 来解决此问题,这将使色散参数符合对数标度(无论如何这更有意义)。

    【讨论】:

      猜你喜欢
      • 2019-03-05
      • 2023-01-20
      • 2023-03-13
      • 1970-01-01
      • 2012-08-14
      • 2018-08-20
      • 2017-03-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多