Я пытаюсь использовать иерархические общие аддитивные модели в MGCV, используя семейство гауссовских моделей в масштабе местоположения. Однако это семейство функций выдает загадочную ошибку при попытке соответствовать.
Следовал рекомендациям по HGAM из недавней статьи (https://peerj.com/articles/6876/) вместе с указаниями из примечаний в описании пакета lmvar (https://cran.r-project.org/web/packages/lmvar/vignettes/Intro.html).
library(mgcv); library(datasets)
# Using the CO2 dataset for illustration
data <- datasets::CO2
# Changing the 'Plant' factor from ordered to unordered
data$Plant <- factor(data$Plant, ordered = FALSE)
# This model fits with no errors
CO2_modG_1 <- gam(log(uptake) ~ s(log(conc), k = 5, bs = 'tp') + s(Plant, k = 12, bs = 're'), data = data, method = 'REML', family = 'gaussian')
# This model fails with error
CO2_modG_2 <- gam(log(uptake) ~ s(log(conc), k = 5, bs = 'tp') + s(Plant, k = 12, bs = 're'), data = data, method = 'REML', family = gaulss())
Это возвращает сообщение об ошибке:
Error in while (sqrt(mean(dlb/(dlb + lami * dS * rm)) * mean(dlb)/mean(dlb + :
missing value where TRUE/FALSE needed