I am working with the package
mgcv fitting some GAMs with several covariates, and the same models with GAMMs including annual correlation.
summary function to our GAMs and GAMMs we got the
R squared that inform about the quality of our model and how well the data fit it.
Deviance explained is only showed for GAMs and not for GAMMs.
If I understand well, a given model could fit well some data but another model with different predictor variables can fit slightly worse but explain model variability and therefore, could be better.
Since we are going to present results of GAMs and GAMMs in our work, I would like to calculate the
Deviance explained of both models.
Some time ago I found a way to calculate the
Deviance explained in GAMM by calculating the sum of squared residuals of the null GAMM (gamm0) assuming that it should be the same thing as the null deviance. Then, we can do the same with the GAMM for which we would like to calculate the
Deviance explained (gamm1) and calculate the proportion that it has been reduced relative to the gamm0. Something like that:
data$rand <- 1 gamm0 <- gamm(response ~ 1, random = list(rand = ~ 1), data=data, family=nb) # NULL GAMM DN <- sum(residuals(gamm0$gam, type = "pearson")^2) # Deviance from NULL GAMM DR <- sum(residuals(gamm1$gam, type = "pearson")^2) # Deviance from our GAMM DE <- (DN-DR)*100/DN; DE # Deviance Explained from our GAMM model
I some place I had notted a comment telling that it should be done with the
"deviance" residuals and not with the
"pearson" residuals, and indeed the results are different.
Therefore, I don't know it this way to calculate the
Deviance explained for a GAMM is correct, and if it is correct which residuals I should calculate (
Moreover, I'm wondering why the
Deviance explained is not showed in the
summary function and it it shouldn't be calculated for GAMMs for any reason.