3.2 ANOVA et régression linéaire

Avez-vous remarqué une ressemblance particulière entre la régression linéaire que nous avons réalisée précédemment et l’analyse de variance (ANOVA) ? Les plus observateurs auront mis en avant que la fonction de base dans R est la même dans les deux cas : lm(). Cette fonction est donc capable de traiter aussi bien des variables indépendantes qualitatives que quantitatives, et effectue alors une ANOVA dans un cas ou une régression linéaire dans l’autre.

Par ailleurs, nous avons vu que l’ANOVA et la régression linéaire se représentent par des modèles semblables :

  • \(y = \mu + \tau_i + \epsilon\) pour l’ANOVA et

  • \(y = \alpha + \beta x + \epsilon\) pour la régression linéaire, avec

  • les résidus \(\epsilon \sim \mathcal{N}(0, \sigma)\) suivent une distribution Normale centrée sur zéro et d’écart type constant dans les deux cas.

Donc, nous retrouvons bien au niveau du modèle mathématique que la différence principale entre les deux réside dans le type de variable indépendante (ou explicative) :

  • Variable qualitative pour l’ANOVA,
  • Variable quantitative pour la régression linéaire.

Le calcul est, en réalité, identique en interne. Il est donc possible de généraliser ces deux approches en une seule appelée modèle linéaire, mais à condition d’utiliser une astuce pour modifier nos modèles afin qu’ils soient intercompatibles.

À vous de jouer !
h5p

3.2.1 Modèle linéaire commun

Le nœud du problème revient donc à transformer nos équations pour qu’elles puissent être fusionnées en une seule. Comment homogénéiser ces deux modèles ? Avant de poursuivre, réfléchissez un peu par vous-même. Quelles sont les différences qu’il faut contourner ? Est-il possible d’effectuer une ou plusieurs transformations des variables pour qu’elles se comportent de manière similaire dans les deux cas ?

3.2.2 Réencodage des variables de l’ANOVA

Considérons, dans un premier temps, un cas très simple : une ANOVA à un facteur avec une variable indépendante qualitative (factor) à deux niveaux6. Nous pouvons écrire :

\[ y = \mu + \tau_1 I_1 + \tau_2 I_2 + \epsilon \]

avec \(I_i\), une variable dite indicatrice créée de toutes pièces qui prend la valeur 1 lorsque le niveau correspond à i, et 0 dans tous les autres cas.

Vous pouvez vérifier par vous-même que l’équation ci-dessus fonctionnera exactement de la même manière que le modèle utilisé jusqu’ici pour l’ANOVA. En effet, pour un individu de la population 1, \(I_1\) vaut 1 et \(\tau_1\) est utilisé, alors que comme \(I_2\) vaut 0, \(\tau_2\) est annulé dans l’équation, car \(\tau_2 I_2\) vaut également 0. Et c’est exactement l’inverse qui se produit pour un individu de la population 2, de sorte que c’est \(\tau_2\) qui est utilisé cette fois-ci.

Notez que notre nouvelle formulation, à l’aide de variables indicatrices, ressemble fortement à la régression linéaire. La seule différence par rapport à cette dernière est que nos variables \(I_i\) ne peuvent prendre que des valeurs 0 ou 1 (en tous cas, pour l’instant), alors que les \(x_i\) dans la régression linéaire sont des variables quantitatives qui peuvent prendre une infinité de valeurs différentes (nombres réels).

Nous pouvons encore réécrire notre équation comme suit pour qu’elle se rapproche encore plus de celle de la régression linéaire simple. Si nous ajoutons et soustrayons \(\tau_1 I_2\) à notre équation, cela revient au même qu’en leur absence :

\[ y = \mu + \tau_1 I_1 + \tau_1 I_2 - \tau_1 I_2 + \tau_2 I_2 + \epsilon \]

  • En considérant \(\beta = \tau_2 - \tau_1\), cela donne :

\[ y = \mu + \tau_1 I_1 + \tau_1 I_2 + \beta I_2 + \epsilon \]

  • En considérant \(\alpha = \mu + \tau_1 = \mu + \tau_1 I_1 + \tau_1 I_2\) (car quelle que soit la population à laquelle notre individu appartient, il n’y a jamais qu’une seule des deux valeurs \(I_1\) ou \(I_2\) non nulle et dans tous les cas le résultat est donc égal à \(\tau_1\)), on obtient :

\[ y = \alpha + \beta I_2 + \epsilon \]

Cette dernière formulation est strictement équivalente au modèle de la régression linéaire simple dans laquelle la variable \(x\) a été remplacée par notre variable indicatrice \(I_2\). Ceci se généralise pour une variable indépendante à \(k\) niveaux, avec \(k - 1\) variables indicatrices au final.

En prenant soin de réencoder le modèle de l’ANOVA relatif aux variables indépendantes qualitatives, nous pouvons à présent mélanger les termes des deux modèles en un seul : notre fameux modèle linéaire. Nous aurons donc, quelque chose du genre (avec les \(x_i\) correspondant aux variables quantitatives et les \(I_j\) des variables indicatrices pour les différents niveaux des variables qualitatives) :

\[ y = \alpha + \beta_1 x_1 + \beta_2 x_2 + ... + \beta_{n-1} I_1 + \beta_n I_2 ... + \epsilon \]

L’encodage tel que présenté plus haut s’appelle un encodage en variable muette (dummy variable en anglais). Lorsque les différents niveaux sont encodés à l’aide des variables indicatrices \(I_i\) qui prennent des valeurs 0 ou 1, il faut remarquer que l’une d’entre elles est redondante. En effet, avec deux niveaux, comme il s’agit nécessairement de l’un des deux, si \(I_1\) vaut zéro, alors \(I_2\) vaudra nécessairement un et vice versa. Donc, nous pouvons n’en garder qu’une des deux. Dans l’équation ci-dessus, nous ne gardons que \(I_2\). Dans un cas général à \(n\) niveaux, nous ne garderons que \(n-1\) niveaux. Ce n’est pas juste utile de le faire, mais c’est indispensable pour éviter une redondance dans les termes du modèle !

À vous de jouer !
h5p

  1. Concrètement, un cas aussi simple se traite habituellement à l’aide d’un test t de Student, mais pour notre démonstration, nous allons considérer ici utiliser une ANOVA à un facteur plutôt.↩︎