Я пытаюсь понять, почему указание ковариационной структуры AR-1 в условной формуле оценивает 2 параметра (как и должно быть), но оценивает многие параметры, если они указаны в формуле нулевой инфляции. Небольшой пример (воспроизведенный из руководства «Ковариационные структуры с glmmTMB») с использованием смоделированных данных показан ниже.
n <- 25 ## Number of time points
x <- MASS::mvrnorm(mu = rep(0,n),
Sigma = .7 ^ as.matrix(dist(1:n)) ) ## Simulate the process using the MASS package
y <- x + rnorm(n) ## Add measurement noise
times <- factor(1:n, levels=1:n)
head(levels(times))
group <- factor(rep(1,n))
dat0 <- data.frame(y, times, group)
library(glmmTMB)
model <- glmmTMB(y ~ ar1(factor(times) + 0 | group), ziformula = ~ ar1(factor(times) + 0 | group), data=dat0, family = gaussian())
summary(model)
Результат модели выглядит следующим образом:
Результат выглядит противоречащим ожиданиям, поскольку AR-1 должен оценить только два параметра: сигма (отображается как «Стандартное отклонение» в условной модели) и ро (отображается как «Корр» в условной модели). Может ли кто-нибудь пролить свет на это?
Правильно ли я понимаю или ошибочно? Я что-то упустил или это проблема пакета?
Это проблема печати, о которой, вероятно, следует сообщить в список проблем glmmTMB.
Несмотря на то, что summary()
печатает полную корреляционную матрицу, можно сделать вывод, что на самом деле оценивается только один параметр: значения в любом столбце корреляционной матрицы (-0,98, 0,95, -0,93, 0,91, -0,89, ...) представляют собой параметр корреляции, возведенный в последовательно более высокие степени (phi^i
). Вы также можете видеть, что все дисперсии и стандартные отклонения идентичны. Таким образом, на самом деле glmmTMB
оценивает только два параметра (std dev = 0,003747, phi = -0,98), он просто неуклюже сообщает о результатах.
Теперь исправлено в запросе на извлечение
Спасибо за оперативное внимание к данному вопросу!