In a linear model, it's easy to assess the importance of each explanatory variable. If the assumptions of the model are met, given two explanatory variables $x_1$ and $x_2$, both with a regression coefficient significantly different from zero, $x_1$ would be more important than $x_2$ if its estimated regression coefficient $\hat\beta_1$ is bigger than the estimated regression coefficient $\hat\beta_2$ of $x_2$. In other words, $x_1$ has a stronger association with the response than $x_2$ if $\hat\beta_1>\hat\beta_2$.
I was wondering if it's possible to assess the importance of the explanatory variables in a generalized additive model as well. The output of a GAM consists in the graphs of the estimated function for each variable. For instance:

enter image description here

I was wondering if it is possible to assess variable importance by looking at the values of the y-axis of each of this plots. Suppose that 'year', 'age' and 'education' are all significant and that the assumptions of the model are met.
Since the codomain of $\hat f_1(year)$ is approximately $[-10,10]$ while the codomain of $\hat f_2(age)$ is about $[-40,10]$, can I conclude that 'age' is more important than 'year'?
In other words, can I conclude that 'age' has a stronger association with the response than 'year'?
Doesn't $\hat f_1(year)$ translate vertically as 'age' varies? Does this affect interpretation and the assessment of variable importance?


Variable importance doesn't have a universally agreed-upon definition, but usually it means something like how much variance is explained by a predictor in your model. What you're describing isn't really conventional variable importance, but sensitivity to change in a covariate.

Variance explained and sensitivity are not the same thing, and can be very different. A model could be highly sensitive to change in a covariate, but if that covariate itself has low variance, it might not explain much variance in the response. You can make variance explained and sensitivity correlate better numerically by rescaling predictors to have unit variance, but the concepts remain distinct. Sensitivity can be changed simply by rescaling a variable, while variance explained is invariant to scaling in linear models.

Sensitivity isn't a single well-defined number for a GAM precisely because of the nonlinearity.

In the mgcv package, the significance of model terms can be measured through the $\chi^2$ and $p$ values reported by summary.gam and anova.gam. However, significance again is yet another somewhat different concept than importance.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.