我希望将Tweedie与响应变量相匹配,但对于数据中的所有记录,将色散参数(phi)设置为1。因此,除phi外,所有参数都用极大似然估计来估计。
谢谢。
发布于 2021-10-26 16:28:41
您可以通过在map中使用glmmTMB参数来做到这一点。
示例设置:
library(glmmTMB)
library(tweedie)
nobs <- 2000; mu <- 4; phi <- 2; p <- 1.7
set.seed(101)
y <- rtweedie(nobs, mu=mu, phi=phi, power=p)适合无约束模型:
twm <- glmmTMB(y ~ 1, family=tweedie(), data = NULL)
sigma(twm) ## 2.0188, close to the true value of 2(sigma()是色散参数的通用访问器方法;它的定义因族而异,参见?sigma.glmmTMB)
受约束:
twm2 <- update(twm,
map = list(betad=factor(NA)),
start = list(betad = 0))
sigma(twm2) ## 1解释:
map指定要固定在其初始值(如果是NA)的参数集,或者约束为彼此相等的参数集(即共享一个因子级别):参见glmmTMB。在这种情况下,色散参数是单个值(如果指定了NA.start,它的长度可以大于1),因此我们将其作为包含dispformula的长度1的因子,以指定起始值(这些值是map用于固定参数的值)。色散参数是在对数尺度上拟合的,因此我们将起始值设为0 (exp(0) = 1)。在这种情况下,我们实际上不需要指定值,因为缺省值无论如何是0,但是这样会更清楚。https://stackoverflow.com/questions/69725918
复制相似问题