0% ont trouvé ce document utile (0 vote)
39 vues96 pages

4 ModLin Slides

Ce document décrit le modèle linéaire, qui peut être utilisé pour la régression linéaire et l'analyse de variance (ANOVA). Il présente les hypothèses, l'estimation des paramètres, les tests statistiques et des exemples d'application du modèle linéaire pour la régression et l'ANOVA à un ou plusieurs facteurs.

Transféré par

oumy dieye
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
39 vues96 pages

4 ModLin Slides

Ce document décrit le modèle linéaire, qui peut être utilisé pour la régression linéaire et l'analyse de variance (ANOVA). Il présente les hypothèses, l'estimation des paramètres, les tests statistiques et des exemples d'application du modèle linéaire pour la régression et l'ANOVA à un ou plusieurs facteurs.

Transféré par

oumy dieye
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
Vous êtes sur la page 1/ 96

Le modèle linéaire (régression, ANOVA)

Catherine MATIAS

Sorbonne Université - Modélisation Statistique


Plan

Introduction et définition du modèle

Estimation des paramètres β

Analyse de la variance

Intervalles de confiance et tests

Diagnostics

Un exemple de régression : les chenilles processionaires de pins

Un exemple d’Anova : durée de vie des piles


Le modèle linéaire I

Motivation et formulation générale


▶ Modèle qui permet d’expliquer une variable aléatoire Y
quantitative en fonction d’une ou plusieurs variables
explicatives qui sont soit quantitatives soit qualitatives
▶ très général et très simple ;
▶ n unités expérimentales ;
▶ étude d’une variable réponse Y en fonction de facteurs
qualitatifs (anova) ou quantitatifs (régression), aussi appelés
variables explicatives x1 , . . . xp .
(Attention à la notation xj , le j est un indice.)
Le modèle linéaire II

Notations
Yi = mi + ϵi , 1≤i≤n


▶ i est le numéro de l’unité expérimentale ;
▶ mi = f (x1i , . . . , xpi ) ∈ R est l’espérance de Yi ; c’est une
combinaison linéaire des variables x1i , . . . , xpi avec xji ∈ R ;
▶ ϵi ∈ R est une variable aléatoire résiduelle (appelée erreur).
Elle inclue différentes variabilités : celle du matériel
expérimental, celle due à des variables explicatives non inclues
dans le modèle et celle due aux erreurs de mesure.
Régression linéaire simple

Le modèle (x ∈ R est quantitative)

Yi = β0 + β1 xi + ϵi , 1≤i≤n
Hypothèses :
▶ E(ϵi ) = 0 et Var(ϵi ) = σ 2 est constante (homoscédasticité)
▶ ϵi ⊥⊥ ϵj ; ∀i ̸= j
▶ ϵi ∼ N (0, σ 2 ) (hypothèse nécessaire pour IC et tests)

Exemples
▶ Tension artérielle = f (age)
▶ Rendement de blé = f (dose de fertilisant)
▶ Concentration ozone = f (température)
▶ Effet d’un traitement = f (dose)
Régression linéaire multiple I

Exemples
▶ Concentration d’ozone=f (température,vent,nébulosité)
▶ Vitesse de circulation coronarienne=f (poids, taux de
cholestérol)

Le modèle (les xj ∈ R sont quantitatives, 1 ≤ j ≤ p)

Yi = β0 + β1 x1i + β2 x2i + · · · + βp xpi + ϵi , 1≤i≤n


Hypothèses :
▶ E(ϵi ) = 0 et Var(ϵi ) = σ 2 est constante (homoscédasticité)
▶ ϵi ⊥⊥ ϵj ; ∀i ̸= j
▶ ϵi ∼ N (0, σ 2 ) (hypothèse nécessaire pour IC et tests)
Régression linéaire multiple II

Le modèle - écriture matricielle

Y = xβ + ϵ
     
Y1 1 x11 . . . xp1   ϵ1
 .  1 x12 β0
. . . xp2 
 .   
.
 ..  =  .. .. .. ..   ..  +  .. 
  
 .  . . . .  .
βp
Yn 1 x1n . . . xpn ϵn
Hypothèses :
▶ E(ϵ) = 0 et Var(ϵ) = σ 2 In
▶ ϵ ∼ Nn (0, σ 2 In ) (pour IC et tests)
Modèle linéaire = ANOVA et Régression linéaire

Le modèle - écriture matricielle

Y = xβ + ϵ

ANOVA Régression
x qualitatives : x quantitatives :
   
1 1A1 (1) . . . 1Ap (1) 1 x11 . . . xp1
1 1A (2) . . . 1Ap (2)  1 x12 . . . xp2 
1
 .. .. .. ..   .. .. .. .. 
   
. . . .  . . . . 
1 1A1 (n) . . . 1Ap (n) 1 x1n . . . xpn
Exemple d’ANOVA à 1 facteur (=1 var explicative
qualitative avec I niveaux) I

▶ On mesure la hauteur de n = 4 arbres de même âge et de 2


espèces différentes (n1 = 2 pins et n2 = 2 hêtres),
▶ Est-ce que l’espèce a une influence sur la hauteur des arbres ?
▶ On note Yit la hauteur du t-ième arbre (1 ≤ t ≤ ni ) de
l’espèce i (1 ≤ i ≤ I = 2).
▶ Modèle d’analyse de la variance à un facteur (l’espèce) qui a
I = 2 niveaux avec un même nb de répétitions par niveau
n1 = n2 = nrep = 2 s’écrit :

Yit = µ + αi + ϵit , 1 ≤ i ≤ I, 1 ≤ t ≤ nrep .

Ici, µ est la hauteur moyenne des arbres, α1 est l’effet de l’espèce 1


et α2 l’effet de l’espèce 2 tandis que ϵit est le terme d’erreur.
Exemple d’ANOVA à 1 facteur (=1 var explicative
qualitative avec I niveaux) II

L’écriture matricielle du modèle Y = xβ + ϵ s’obtient avec


β = (µ, α1 , α2 )⊺ et
 
1 1 0
1 1 0 
x= 1 0 1  .

1 0 1
La variable qualitative "espèce" avec deux niveaux a été
transformée en deux colonnes de variables binaires (dummies) qui
sont les indicatrices de l’évènement "l’arbre est de l’espèce i" pour
1 ≤ i ≤ I = 2.
ANOVA à un facteur versus comparaison de moyennes I

▶ Quand on a une seule variable qualitative qui a exactement


deux niveaux, on peut faire un test de comparaison de
moyennes (t.test) ou un test de comparaison de distributions
(ks.test) sur la variable Y mesurée dans chacun des deux
groupes ;
▶ Exemple : on peut former deux échantillons : le premier est la
hauteur des pins, le second est la hauteur des hêtres. Ces deux
échantillons ne sont pas appariés. On teste H0 : "les moyennes
des hauteurs des pins et des hêtres sont les mêmes" contre
H1 : "elles sont différentes" ; ou on peut aussi tester H0 : "les
distributions des hauteurs des pins et des hêtres sont les
mêmes" contre H1 : "elles sont différentes".
ANOVA à un facteur versus comparaison de moyennes II

▶ Mais que faire si on a plus de 2 espèces ? Dans ce cours, on a


parfois formé deux groupes à partir d’un facteur qui avait
plusieurs niveaux (ex : baies de raisins où on avait regroupé les
populations CE/CO et comparé à la population TE). Mais ce
regroupement est arbitraire !
▶ L’ANOVA permet de faire des comparaisons de l’impact d’un
facteur sur une variable quantitative Y quand ce facteur a plus
de 2 niveaux.
Exemple d’ANOVA à 2 facteurs (=2 var explicatives
qualitatives) I

▶ On peut produire un plastique sous 3 températures différentes


(premier facteur) en utilisant 4 produits chimiques (second
facteur) différents. On veut savoir quelle combinaison donne le
plastique le plus résistant (var quantitative Y ).
▶ On note Yijt le rendement obtenu en utilisant la valeur i du
premier facteur (température, 1 ≤ i ≤ 3) et j pour le second
facteur (produit chimique, 1 ≤ j ≤ 4) pour la répétition
1 ≤ t ≤ nij .
Exemple d’ANOVA à 2 facteurs (=2 var explicatives
qualitatives) II

On utilise le modèle suivant

Yijt = µ + αi + δj + γij + ϵijt , 1 ≤ t ≤ nij

avec
▶ µ rendement moyen
▶ αi effets du premier facteur ; ici 1 ≤ i ≤ I = 3,
▶ βj effets du second facteur ; ici 1 ≤ j ≤ J = 4,
▶ γij effets des interactions entre les deux facteurs ; (ici 12
paramètres)
▶ ϵijt terme d’erreur
Exemple d’ANOVA à 2 facteurs (=2 var explicatives
qualitatives) III
Ici l’écriture matricielle s’obtient avec
β = (µ, α1 , . . . , α3 , δ1 , . . . , δ4 , γ1,1 , . . . , γ3,4 )⊺ et si nij = 1, ∀i, j (1
répétition pour simplifier) on a
 
1 1 0 0
 .. .. .. ..
 . . . . I4


 
 1 1 0 0 
 
 1 0 1 0 
 .. .. .. ..
 
x =  . . . . I4 I12  .

 
 1 0 1 0 
 
 1 0 0 1 
 .. .. .. ..
 
 . . . . I

4 
1 0 0 1
Vocabulaire de l’ANOVA

▶ Modèle additif : Pas d’interaction entre les facteurs (ex :


γij = 0, ∀i, j dans une ANOVA à 2 facteurs).
▶ Modèle équilibré complet (avec répétitions) : pour chaque
combinaison des facteurs, on a le même nombre nrep ≥ 1 de
répétitions.
Syntaxe sous R I

La fonction lm (linear model)


S’utilise avec le concept de formule. Exemples :
▶ 1 var. explicative X avec intercept (régr. simple)
lm(y ˜ X + 1), (ou simplement lm(y ˜ X ))
▶ 2 var.s explicatives X1 , X2 (régr. multiple) sans intercept
lm(y ˜ X1 + X2 - 1),
▶ 1 var. factorielle A (anova à 1 facteur)
lm(y ˜ A),
▶ 2 var. factorielles A, B (anova à 2 facteurs sans interactions)
lm(y ˜ A+B),
▶ 2 var. factorielles A, B (anova à 2 facteurs en interaction)
lm(y ˜ A*B).
Syntaxe sous R II

Points d’attention sur l’ANOVA


▶ Comme d’habitude, R est très souple et pour faire une
ANOVA, vous allez simplement utiliser la commande lm sur
une ou des variables qui sont qualitatives (encodées en
facteurs). En particulier :
▶ pas besoin d’écrire une matrice x en décomposant chaque
facteur en I variables binaires (indicatrices = dummies)
▶ pas besoin non plus de découper et ré-ordonner le vecteur
Y = (Y1 , . . . , Yn )⊺ pour l’écrire sous la forme
(Y11 , . . . , Y1n1 , Y21 , . . . , Y2n2 , . . . , YI1 , . . . , YInI )
▶ Par contre, il faut bien comprendre cette transformation pour
interpréter correctement les coefficients en sortie de lm pour
ces variables.
Linéarité en les paramètres I
Exemple de la régression linéaire multiple

Le modèle est linéaire en ses paramètres (pas nécessairement en


les variables xj )
Exemple : régression sur base polynomiale
Un modèle de régression linéaire multiple représentable en 2D

## vrais paramètres: polynôme d'ordre 3


beta <- c(3, 1, 2, -1)
sigma <- 5
p <- length(beta)

## simulation des observations


n <- 100
x <- rnorm(n)
X <- cbind(1, x, x^2, x^3) # Attention ici ce sont des puissances !
epsilon <- rnorm(n,0,sigma)
y <- X %*% beta + epsilon
library('ggplot2')
ggplot(data.frame(x=x,y=y), aes(x,y)) + geom_point() +
geom_smooth(method="lm", formula=y~poly(x,3))
Linéarité en les paramètres II
Exemple de la régression linéaire multiple

20

10
y

−10

−2 −1 0 1 2
x
Modèle linéaire : objectifs statistiques

▶ Estimer les paramètres β et σ 2

▶ Tester la nullité des paramètres {βj }pj=1 , i.e. l’influence de


chacune des variables

▶ Prédire Y pour une nouvelle observation x

▶ Tester la pertinence générale du modèle

▶ Vérifier l’applicabilité du modèle


Plan

Introduction et définition du modèle

Estimation des paramètres β

Analyse de la variance

Intervalles de confiance et tests

Diagnostics

Un exemple de régression : les chenilles processionaires de pins

Un exemple d’Anova : durée de vie des piles


Moindres carrés ordinaires (MCO) I
Cas de la régression linéaire simple

▶ Rappel : Yi = a + bxi + ϵi , 1 ≤ i ≤ n ;
▶ On a des points (xi , Yi ), 1 ≤ i ≤ n dans le plan et on cherche
la droite qui s’ajuste le mieux à cet ensemble de points ;
▶ La méthode MCO consiste à chercher a, b ∈ R qui minimisent
n
X n
X
2
S(a, b) = (Yi − (a + bxi )) = ϵ2i = ∥Y − (a + bx)∥2 ,
i=1 i=1

où ∥ · ∥ est la norme euclidienne (dans Rn ).


▶ La résolution du système donne
Pn
(Y − Ȳn )(xi − x̄n )
b̂ = i=1Pni 2
, â = Ȳn − b̂x̄n .
i=1 (xi − x̄n )
Moindres carrés ordinaires (MCO) II
Cas de la régression linéaire simple

▶ On peut définir la prédiction ŷi du modèle au point xi et


l’erreur associée ϵ̂i :

ŷi = â + b̂xi , ϵ̂i = yi − ŷi

▶ Rem : si on suppose les ϵi ∼ N (0, σ 2 ) alors ces estimateurs


sont exactement ceux du maximum de vraisemblance.
Moindres carrés ordinaires (MCO) : cas général I

Y = xβ + ϵ.

Définition
L’estimateur des moindres carrés ordinaires des paramètres β du
modèle regréssion linéaire est défini par β̂ = Argminβ ∥Y − xβ∥2 .

Théorème
L’estimateur β̂ des MCO vérifie le système

x⊺ xβ̂ = x⊺ Y.

C’est le système des équations normales.


Si on note r = rang(x), on voit que β̂ satisfait un système de r
équations linéaires à p inconnues. Lorsque r = p + 1, la matrice
x⊺ x est définie positive.
Moindres carrés ordinaires (MCO) : cas général II
Sur le rang de x
▶ Pour la régression linéaire simple et la régression polynomiale :
on a bien rang(x) = p + 1 (matrice de Vandermonde).
▶ Si les variables explicatives x1 , . . . , xp ∈ Rn ne sont pas liées
linéairement, c’est aussi le cas pour la régression linéaire
multiple. Dans la suite on suppose toujours (pour la régression
multiple), que c’est bien le cas.

Solution dans le cas rang(x) = p + 1


Dans ce cas la matrice x⊺ x est inversible et on obtient

β̂ = (x⊺ x)−1 x⊺ Y.

En conséquence, la prédiction Ŷ = xβ̂ = x(x⊺ x)−1 x⊺ Y := PY


c’est la projection orthogonale de Y sur l’espace engendré par les
vecteurs 1n , x1 , . . . , xp ∈ Rn .
Moindres carrés ordinaires (MCO) : cas général III

Cas où rang(x) < p + 1


▶ C’est le cas des modèles d’analyse de la variance ;
▶ Il y a une infinité de solutions au système d’équations
normales ; en ajoutant des contraintes sur β, on va en choisir
une intéressante pour le problème étudié.
▶ On ajoutera donc h = p + 1 − rang(x) contraintes ; sans
oublier le sens particulier que ces contraintes vont donner aux
paramètres ;
▶ En général, on ne s’intéressera pas aux valeurs de β mais à des
combinaisons linéaires invariantes, i.e. qui ne dépendent pas
des contraintes particulières choisies.
Moindres carrés ordinaires (MCO) : cas général IV

Solution dans le cas où rang(x) < p + 1


▶ Contraintes linéaires sur les paramètres : Hβ = 0 avec H
matrice h × (p + 1).
▶ Nouveau système
 ⊺
x xβ = x⊺ Y
 ⊺   ⊺ 
x x x Y
⇐⇒ Gβ = β=
Hβ = 0 H 0

▶ Dans cette écriture, G⊺ G est inversible (par construction) ;


▶ Par commodité, on note (x⊺ x)− = (G⊺ G)−1 et on l’appelle
’inverse généralisée’ de x⊺ x.
▶ Rem : Si on change H, le projecteur P = x(x⊺ x)− x⊺ ne
change pas car le sous-espace engendré par les variables
1n , x1 , . . . , xp ∈ Rn ne dépend pas des contraintes.
Exemple des arbres I
On reprend l’exemple de la hauteur des arbres. On rappelle
l’écriture du modèle Y = xβ + ϵ avec β = (µ, α1 , α2 )⊺ et
 
1 1 0  
1 1 0 n nrep nrep

x= 1 0 1 , x x = nrep nrep 0 .
 
nrep 0 nrep
1 0 1

Les équations normales pour µ̂, α̂1 , α̂2 s’écrivent alors


2
X X
nµ̂ + nrep α̂i = yit
i=1 i,t
X
nrep µ̂ + nrep α̂1 = y1t
t
X
nrep µ̂ + nrep α̂2 = y2t
t
Exemple des arbres II
Les données observées sont les suivantes :
espèce hêtre hêtre pin pin
obs 30 34 40 42
Nom variable y11 y12 y21 y22

▶ La première équation est la somme des 2 autres ;


▶ On a rang(x) = 2 et il nous faut ajouter 1 contrainte ;
2 types de contraintes sont classiquement utilisées :
PI
1. i=1 αi = 0 (somme des effets des niveaux de chaque facteur
est nulle), i.e. H = (0, 1, 1). En résolvant les équations
normales, on obtient dans un plan équilibré

µ̂ = Y•• , α̂i = Yi• − Y•• , ∀1 ≤ i ≤ I

où Y•• est la moyenne générale des Yit et Yi• la moyenne du


groupe i.
Exemple des arbres III
Sur l’exemple : µ̂ = 36.5, α̂1 = −4.5 et α̂2 = 4.5. Les αi
s’interprètent comme des écarts à la moyenne générale.
Si
PIle dispositif n’est pas équilibré, on utilise plutôt la contrainte
i=1 ni αi = 0.
2. αI = 0 (modalité de référence), i.e. H = (0, 0, 1). On obtient

µ̂ = YI• , α̂i = Yi• − YI• , ∀1 ≤ i ≤ I.

Sur l’exemple : µ̂ = 41 (moyenne du groupe I = 2), α̂1 = −9


et α̂2 = 0 (groupe de référence).
Les αi s’interprètent comme des écarts au groupe de référence.
Contrainte intéressante si l’un des niveaux sert de témoin pour
l’expérience.

Remarque
On voit que les estimateurs varient en fonction des contraintes et
leur interprétation également. Mais l’analyse globale du problème
reste la même.
Sous R - Exemple avec les iris

data("iris")
coef(lm(Sepal.Length~Species, data=iris))

## (Intercept) Speciesversicolor Speciesvirginica


## 5.006 0.930 1.582

▶ La fonction lm de R choisit une modalité de référence (le


premier niveau de la variable qualitative).
▶ Ici, la valeur de l’intercept correspond à la longueur moyenne
des sépales dans le groupe "Setosa" et les deux coefficients
sont les effets de chacune des deux autres espèces par rapport
à l’espèce Setosa.
Une façon de s’affranchir des contraintes choisies dans
l’interprétation des estimations, consiste à utiliser le concept de
contraste.
Combinaisons linéaires invariantes et contrastes
Définition
Une combinaison linéaire des paramètres β est invariante si son
estimation est la même quelque soit le système de contraintes H.

Exemple
E(Yi ) = (xβ)i est une CL invariante. En effet, son estimation
(xβ̂)i = Ŷi = (PY)i ne dépend pas des contraintes. Sur l’exemple
des arbres, ŷit = µ̂ + α̂i = yi• .

Définition
Un contraste
Pp est une combinaison
Pp linéaire des paramètres
ψ = j=1 cj βj telle que j=1 cj = 0.

Exemple
On peut comparer deux niveaux d’un facteur à travers le contraste
ψ = α1 − α2 . Ce contraste est aussi une CL invariante (dans le cas
d’un dispositif équilibré) car ψ̂ = y1• − y2• .
Propriétés de l’estimateur MCO β̂

▶ E(β̂) = β : estimateur sans biais (quelque soit le jeu de


contraintes) ;
▶ Si r = p + 1, Var(β̂) = (x⊺ x)−1 σ 2 ;
▶ Si r < p + 1, Var(β̂) = (x⊺ x)− x⊺ x(x⊺ x)− σ 2 ;
▶ Si ϵ ∼ Np (0, σ 2 In ) alors β̂ ∼ Np (β, Var(β̂)) ;
▶ Si ψ = c⊺ β est une CL des paramètres avec c de dimension
p × 1 alors son estimateur ψ̂ = c⊺ β̂ vérifie
E(ψ̂) = c⊺ E(β̂) = c⊺ β = ψ (sans biais) et
Var(ψ̂) = c⊺ Var(β̂)c. De plus, dans le cas gaussien, on a
ψ̂ ∼ N (0, c⊺ Var(β̂)c).
Plan

Introduction et définition du modèle

Estimation des paramètres β

Analyse de la variance

Intervalles de confiance et tests

Diagnostics

Un exemple de régression : les chenilles processionaires de pins

Un exemple d’Anova : durée de vie des piles


Résidus

À partir de β̂, on obtient le prédicteur Ŷ = xβ̂ et à partir de là on


estime les résidus ϵ̂ = Y − Ŷ = (In − P)Y.
▶ ϵ̂ est la projection orthogonale de Y sur l’espace orthogonal à
lin(x).
▶ Puisque Ŷ est la projection orthogonale de Y sur lin(x), on a
l’orthogonalité des vecteurs Ŷ et ϵ̂, donc les estimateurs Ŷ et
ϵ̂ sont non corrélés.
▶ Dans le cas gaussien, Ŷ et ϵ̂ sont indépendants.
▶ De même, Ŷ − Ȳn est la projection orthogonale de Y sur
l’espace engendré par x1 , . . . , xp ∈ Rn ; et est orthogonal à
ϵ̂ = Y − Ŷ.
Décomposition de la variance I

Théorème fondamental (Pythagore)


Comme ϵ̂ = Y − Ŷ est orthogonal à Ŷ − Ȳn , on a (en notant ∥ · ∥
la norme euclidienne dans Rn )

SCT = SCR + SCM


∥Y − Ȳn ∥2 = ∥Y − Ŷ∥2 + ∥Ŷ − Ȳn ∥2 ,

avec
▶ SCT = Somme des carrés totale
⇝ variabilité totale à expliquer
▶ SCM = Somme des carrés due au modèle
⇝ variabilité expliquée par le modèle
▶ SCR = Somme des carrés résiduelle
⇝ variabilité non expliquée par le modèle
Décomposition de la variance II

Estimation de la variance
n
On a SCR = ∥ϵ̂∥2 = 2 et E(SCR)=(n − r)σ 2 . Donc on
P
i=1 ϵ̂i
estime la variance par
SCR
Ŝ 2 = .
n−r
Le nombre de degrés de liberté ddl(SCR) de cette somme des
carrés résiduelle vaut n − r (où r = rang(x)).
Rem : On a Y ∈ Rn et Ŷ ∈ Rr , du coup ϵ̂ = Y − Ŷ ∈ Rn−r .

Exemples
▶ Pour la régression simple, r = 2 et ddl(SCR) = n − 2 ;
▶ Pour l’ANOVA à 1 facteur à I niveaux, r = I et
ddl(SCR) = n − I.
Coefficients d’ajustement
Coefficient de détermination R2
SCM SCR
R2 = =1− ∈ [0; 1]
SCT SCT
Mesure la qualité de l’ajustement du modèle aux observations. Peut
être interprété comme le pourcentage de variance expliquée par le
modèle. Si proche de 1, modèle très bien ajusté et prédictions
précises.
Cependant R2 est biaisé et sur-évalue la qualité de l’ajustement. En
particulier, R2 augmente avec le nb de variables incluses dans le
modèle.
Coefficient de détermination R2 ajusté

2 SCR/(n − p − 1)
Radj =1− .
SCT /(n − 1)
Plan

Introduction et définition du modèle

Estimation des paramètres β

Analyse de la variance

Intervalles de confiance et tests

Diagnostics

Un exemple de régression : les chenilles processionaires de pins

Un exemple d’Anova : durée de vie des piles


Intervalles de confiance I

Dans toute cette partie, on suppose que ϵ ∼ Nn (0, σ 2 In ).


On note ξ la matrice (x⊺ x)−1 (cas inversible) ou la matrice
(x⊺ x)− (x⊺ x)(x⊺ x)− (cas inverse généralisé).
IC sur σ 2
On peut montrer que

(n − r)Ŝ 2
∼ χ2n−r ,
σ2
d’où l’IC pour σ 2 au niveau 1 − α donné par
h (n − r)Ŝ 2 (n − r)Ŝ 2 i
; ,
q1−α/2,χ2n−r qα/2,χ2n−r

où qα,χ2n−r est le quantile d’ordre α de la loi χ2n−r .


Intervalles de confiance II

IC sur βj , 1 ≤ j ≤ p
On a vu que β̂j ∼ N (βj , ξjj σ 2 ) et (n − r)Ŝ 2 /σ 2 ∼ χ2n−r . On peut
aussi montrer que
β̂j − βj
p ∼ Tn−r
Ŝ 2 ξjj
Ainsi, [β̂j − t1−α/2,n−r Ŝ ξjj ; β̂j + t1−α/2,n−r Ŝ ξjj ] est un IC
p p

pour βj au niveau de confiance 1 − α (où tα,n−r est le quantile


d’ordre α de la loi de Student à n − r degrés de liberté).
Rem : on peut de la même façon construire un IC sur une CL
ψ = c⊺ β.
Exemple

Dans le modèle d’analyse de la variance à un facteur (qualitatif)


considéré précédemment (dispositif équilibré avec nrep répétitions
par niveau), on peut chercher un IC pour le contraste ψ = α1 − α2
qui est une CL invariante des paramètres.
On a ψ̂ = Y1• − Y2• avec E(ψ̂) = ψ et Var(ψ̂) = 2σ 2 /nrep dont
\
l’estimateur est Var( ψ̂) = 2Ŝ 2 /n et
rep

ψ̂ − ψ L
p ⇝ T (n − r).
2/nrep Ŝ n→∞

D’où l’IC pour ψ au niveau asymptotique 1 − α


q q
[Y1• −Y2• −t1−α/2,n−r Ŝ nrep /2; Y1• −Y2• +t1−α/2,n−r Ŝ nrep /2].
Tests sur les paramètres I

Sur un paramètre
Soit 1 ≤ j ≤ p et a ∈ R fixés. On veut tester H0 : βj = a. On
rappelle que (sous hypothèse de normalité) on a
β̂j ∼ N (βj , ξjj σ 2 ). Donc on rejette H0 au niveau α si

|β̂j − a|
p ≥ t1−α/2;n−r .
ξjj Ŝ

Remarques
▶ OK en régression ; en ANOVA, peu de sens car le paramètre
dépend du choix des contraintes !
▶ Sous R , les tests de nullité de paramètres sont implémentés
dans lm. On peut les visualiser en appelant la fonction
summary sur la sortie de lm.
Tests sur les paramètres II

Sur une CL des paramètres


Soit c ∈ Rp+1 tel que c⊺ β est un contraste invariant et a ∈ R fixés.
On veut tester H0 : c⊺ β = a. Alors on rejette H0 au niveau α si

|c⊺ β̂ − a|
√ ⊺ ≥ t1−α/2;n−r .
c ξcŜ
Test de modèles emboîtés I

Définition
Soit deux modèles M0 : Y = x0 β 0 + ϵ et M1 : Y = x1 β 1 + ϵ.
Alors M0 est dit emboîté dans M1 si M0 peut-être obtenu comme
un cas particulier de M1 en annulant certains paramètres ou
certaines combinaisons linéaires de M1 .

Exemples

M0 : Y = β0 + ϵ (modèle le plus simple)
1.
M1 : Y = xβ + ϵ (modèle le plus complexe)
2. 
M0 : {βq = βq+1 = · · · = βp = 0} (q < p)
M1 : Y = xβ + ϵ (modèle le plus complexe)
3. 
ANOVA à 2 facteurs sans interaction :
M0 : {α1 = · · · = αI = 0} (pas d’effet du 1er facteur)
M1 : Yijk = µ + αi + δj + ϵijk (modèle le plus complexe)
Test de modèles emboîtés II

On note Ŷ1 (resp. Ŷ0 ) la prédiction sous le modèle M1 (resp.


M0 ) et SCM1 = ∥Ŷ1 − Ȳn ∥2 (resp. SCM0 = ∥Ŷ0 − Ȳn ∥2 ) la
somme des carrés expliquée par le modèle M1 (resp. M0 ).
▶ Puisque M0 emboîté dans M1 , on a SCM0 ≤ SCM1
▶ Question : la différence SCM1 − SCM0 est-elle assez grande
pour justifier l’emploi d’un modèle plus compliqué ? Test de
H0 : M = M0 contre H1 : M = M1 .
▶ Comme M1 a plus de paramètres que M0 , on regarde
(SCM1 − SCM0 )/(p1 − p0 ) où pi + 1 est le nombre de
paramètres du modèle Mi (pi est le nb de variables).
▶ Cette quantité mesure l’amélioration du pouvoir explicatif par
paramètre.
Test de modèles emboîtés III

Statistique de test : Fisher


On rejette H0 au profit de H1 au niveau α lorsque

(SCM1 − SCM0 )/(p1 − p0 )


F = ≥ f1−α;p0 −p1 ,ν1 ,
SCR1 /ν1
avec
▶ SCR1 = SCT − SCM1 = ∥Y − Ŷ1 ∥2
▶ ν1 = ddl(SCR1 )
▶ f1−α;p1 −p2 ,ν1 quantile d’ordre 1 − α de la loi de Fisher
F(p1 − p2 ; ν1 ).
Comparaison de modèles emboîtés

Tableau de synthèse
Degrés de Sommes Carrés
Source
liberté des carrés moyens
M0 n − ddl0 SCR0 SCR0 /ddl0
M1 n − ddl1 SCR1 SCR1 /ddl1
Plan

Introduction et définition du modèle

Estimation des paramètres β

Analyse de la variance

Intervalles de confiance et tests

Diagnostics

Un exemple de régression : les chenilles processionaires de pins

Un exemple d’Anova : durée de vie des piles


Objectifs du diagnostic

1. Vérification des hypothèses du modèles


▶ linéarité/modèle adéquat
▶ homoscédasticité des résidus
▶ indépendance des résidus
▶ normalité des résidus

2. Détection d’observations atypiques


Analyse des résidus I

Les hypothèses du modèle linéaire portent sur les variables


aléatoires résiduelles ϵi . On ne les observe pas, mais on les a
estimées ϵ̂i = Yi − Ŷi .
▶ Linéarité : Pour valider E(ϵi ) = 0, on trace les graphes des
résidus
▶ (régression) pour chaque variable explicative xk , le graphe de
points (xki , ϵ̂i ), 1 ≤ i ≤ n
▶ (regression, anova) le graphe de points (Ŷi , ϵ̂i ).
Les résidus ne doivent pas comporter de tendance apparente.
S’il existe une tendance, il suffit parfois de transformer une

variable explicative par une fonction (log, ·, (·)2 , . . . ).
▶ Homoscédasticité : Pour valider Var(ϵi ) = σ 2 , mêmes
graphiques. La variabilité de l’erreur doit être constante. Sinon,

transformer la réponse Y (log, · ou 1/·) peut parfois
stabiliser la variance.
Analyse des résidus II

▶ Indépendance :
▶ Graphe de points (i, ϵ̂i ), 1 ≤ i ≤ n : il ne doit pas y avoir de
tendance.
▶ On peut faire des tests d’indépendance des ϵ̂i .
▶ Normalité : On peut faire des QQ-plots ou des tests de
normalité des ϵ̂i .
Plan
Introduction et définition du modèle

Estimation des paramètres β

Analyse de la variance

Intervalles de confiance et tests

Diagnostics

Un exemple de régression : les chenilles processionaires de pins


Étude descriptive
Analyse basique
Prise en compte de la corrélation des prédicteurs
Modèles emboîtés
Plan
Introduction et définition du modèle

Estimation des paramètres β

Analyse de la variance

Intervalles de confiance et tests

Diagnostics

Un exemple de régression : les chenilles processionaires de pins


Étude descriptive
Analyse basique
Prise en compte de la corrélation des prédicteurs
Modèles emboîtés
Données de chenilles processionnaires du pin I

Données
On dispose de 33 échantillons de parcelles forestières de 10
hectares. Chaque parcelle est coupée en placette de 5 ares sur
lesquelles sont calculées les moyennes des mesures suivantes :
▶ le nombre de nids de chenilles par arbre (NbNids),
▶ l’altitude (en mètres) (Altitude),
▶ la pente (en degrés) (Pente),
▶ le nombre de pins dans une placette (NbPins),
▶ la hauteur de l’arbre échantillonné au centre de la placette
(Hauteur),
▶ le diamètre de cet arbre (Diametre),
▶ la note de densité de peuplement (Densite),
▶ l’orientation de la placette (Orient), avec deux valeurs 1=sud
et 2=autre,
Données de chenilles processionnaires du pin II

▶ la hauteur des arbres dominants (HautMax),


▶ le nombre de strates de végétation (NbStrat),
▶ le mélange du peuplement (Melange), allant de 1 (pas
mélangé) à 2 (mélangé).
NB : toutes les var. sont traitées comme quantitatives.
chenilles <- read.table(file='data/Chenilles.txt',header=TRUE)
colnames(chenilles)

## [1] "Altitude" "Pente" "NbPins" "Hauteur" "Diametre" "Densite"


## [7] "Orient" "HautMax" "NbStrat" "Melange" "NbNids"

Objectif
Prédire le nombre de nids (NbNids) par les autres variables.
Données de chenilles processionnaires du pin III

L’entête du tableau de données donne


head(chenilles)

## Altitude Pente NbPins Hauteur Diametre Densite Orient HautMax NbStrat Melan
## 1 1200 22 1 4.0 14.8 1.0 1.1 5.9 1.4 1
## 2 1342 28 8 4.4 18.0 1.5 1.5 6.4 1.7 1
## 3 1231 28 5 2.4 7.8 1.3 1.6 4.3 1.5 1
## 4 1254 28 18 3.0 9.2 2.3 1.7 6.9 2.3 1
## 5 1357 32 7 3.7 10.7 1.4 1.7 6.6 1.8 1
## 6 1250 27 1 4.4 14.8 1.0 1.7 5.8 1.3 1
## NbNids
## 1 2.37
## 2 1.47
## 3 1.13
## 4 0.85
## 5 0.24
## 6 1.49

Par ailleurs
Données de chenilles processionnaires du pin IV
summary(chenilles)

## Altitude Pente NbPins Hauteur Diametre


## Min. :1075 Min. :15.00 Min. : 0.00 Min. :2.400 Min. : 5.80
## 1st Qu.:1228 1st Qu.:24.00 1st Qu.: 4.00 1st Qu.:3.700 1st Qu.:11.50
## Median :1309 Median :28.00 Median : 8.00 Median :4.400 Median :15.70
## Mean :1315 Mean :29.03 Mean :11.45 Mean :4.452 Mean :15.25
## 3rd Qu.:1396 3rd Qu.:34.00 3rd Qu.:18.00 3rd Qu.:5.300 3rd Qu.:18.30
## Max. :1575 Max. :46.00 Max. :32.00 Max. :6.500 Max. :21.80
## Densite Orient HautMax NbStrat
## Min. :1.000 Min. :1.100 Min. : 3.600 Min. :1.100
## 1st Qu.:1.200 1st Qu.:1.600 1st Qu.: 5.900 1st Qu.:1.500
## Median :1.500 Median :1.700 Median : 7.200 Median :2.000
## Mean :1.791 Mean :1.658 Mean : 7.539 Mean :1.982
## 3rd Qu.:2.400 3rd Qu.:1.800 3rd Qu.: 9.100 3rd Qu.:2.500
## Max. :3.300 Max. :1.900 Max. :13.700 Max. :2.900
## Melange NbNids
## Min. :1.300 Min. :0.0300
## 1st Qu.:1.600 1st Qu.:0.1800
## Median :1.800 Median :0.6700
## Mean :1.761 Mean :0.8112
## 3rd Qu.:2.000 3rd Qu.:1.1300
## Max. :2.000 Max. :3.0000
Les variables explicatives

library(GGally)
ggpairs(chenilles, columns=1:10, axisLabels="none")

Altitude Pente NbPins Hauteur Diametre Densite Orient HautMax NbStrat Melange

Altitude
Corr: Corr: Corr: Corr: Corr: Corr: Corr: Corr: Corr:
0.121 0.538** 0.321. 0.284 0.515** 0.268 0.360* 0.364* −0.128

Corr: Corr: Corr: Corr: Corr: Corr: Corr: Corr:

Pente
0.322. 0.137 0.113 0.301. −0.152 0.262 0.326. 0.128

NbPins
Corr: Corr: Corr: Corr: Corr: Corr: Corr:
0.414* 0.295. 0.980*** 0.128 0.759*** 0.877*** 0.187

Hauteur Diametre
Corr: Corr: Corr: Corr: Corr: Corr:
0.905*** 0.439* 0.058 0.772*** 0.460** −0.121

Corr: Corr: Corr: Corr: Corr:


0.306. −0.079 0.596*** 0.267 −0.091

Densite
Corr: Corr: Corr: Corr:
0.151 0.810*** 0.909*** 0.108

Orient
Corr: Corr: Corr:
0.060 0.063 0.131

HautMax
Corr: Corr:
0.854*** 0.003

NbStrat
Corr:
0.148

Melange
Distribution de la réponse
par(mfrow=c(1,2))
boxplot(chenilles$NbNids)
plot(density(chenilles$NbNids))

density.default(x = chenilles$NbNids)
3.0

0.6
2.5

0.5
2.0

0.4
Density
1.5

0.3
1.0

0.2
0.5

0.1
0.0
0.0

−1 0 1 2 3 4

N = 33 Bandwidth = 0.3171
Plan
Introduction et définition du modèle

Estimation des paramètres β

Analyse de la variance

Intervalles de confiance et tests

Diagnostics

Un exemple de régression : les chenilles processionaires de pins


Étude descriptive
Analyse basique
Prise en compte de la corrélation des prédicteurs
Modèles emboîtés
Moindres carrés ordinaires (à la main ou avec lm)

Nb : ici, on n’a que des var. explicatives quantitatives donc la


matrice X n’est pas compliquée.
X <- cbind(1, as.matrix(chenilles[, -11]))
y <- chenilles[,11]
beta.ols <- solve(t(X)%*%X, t(X)%*%y) # equations normales
print(t(beta.ols))

## Altitude Pente NbPins Hauteur Diametre


## [1,] 8.561849 -0.002956282 -0.03482086 0.03538525 -0.5015637 0.1087387
## Densite Orient HautMax NbStrat Melange
## [1,] -0.03271541 -0.2039587 0.02818019 -0.8624094 -0.4481242

coef(lm(NbNids~., data=chenilles)) ## extrait la variable coefficients

## (Intercept) Altitude Pente NbPins Hauteur Diametre


## 8.561848740 -0.002956282 -0.034820858 0.035385252 -0.501563729 0.108738715
## Densite Orient HautMax NbStrat Melange
## -0.032715407 -0.203958683 0.028180190 -0.862409366 -0.448124198
Régression linéaire multiple "brute"
Graphe des résidus

model.brut <- lm(NbNids~.,data=chenilles)


df.plot <- data.frame(fitted=fitted(model.brut),residuals=residuals(model.brut))
ggplot(data=df.plot, aes(x=fitted,y=residuals)) +geom_point()

1.0

0.5
residuals

0.0

−0.5

−1.0

0 1 2
fitted

Pas homoscédastique. On propose une transformation


logarithmique de Y.
Modèle log-transformé
Graphe des résidus

model.logY <- lm(log(NbNids)~.,data=chenilles)


df.plot <- data.frame(fitted=fitted(model.logY),residuals=residuals(model.logY))
ggplot(data=df.plot, aes(x=fitted,y=residuals)) +geom_point()

1
residuals

−1

−3 −2 −1 0 1
fitted

Dans la suite, on travaille avec le modèle log-transformé.


Le diagnostic graphique complet
par(mfrow=c(2,2)); plot(model.logY)

Residuals vs Fitted Normal Q−Q


2

Standardized residuals
20 20

2
10
1
Residuals

1
0

0
−1

22

−2
33
−2

33

−3 −2 −1 0 1 −2 −1 0 1 2

Fitted values Theoretical Quantiles

Scale−Location Residuals vs Leverage


1.5
Standardized residuals

20 33
Standardized residuals

2
10 1
10
0.5
1.0

1
0
0.5

8
0.5
−2

1
33
0.0

Cook's distance

−3 −2 −1 0 1 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7

Fitted values Leverage


Tests de normalité et d’indépendance des résidus

shapiro.test(residuals(model.logY)) # test de normalité

##
## Shapiro-Wilk normality test
##
## data: residuals(model.logY)
## W = 0.97572, p-value = 0.6517

library(car)
durbinWatsonTest(model.logY) # test de corrélation

## lag Autocorrelation D-W Statistic p-value


## 1 -0.1208374 2.051547 0.974
## Alternative hypothesis: rho != 0
Analyse du modèle : tests de nullité de paramètres I

On peut commencer par faire le test du modèle le plus petit (pas de


variables explicatives) contre le modèle complet.
model.cte <- lm(log(NbNids)~1,chenilles)
anova(model.cte, model.logY)

## Analysis of Variance Table


##
## Model 1: log(NbNids) ~ 1
## Model 2: log(NbNids) ~ Altitude + Pente + NbPins + Hauteur + Diametre +
## Densite + Orient + HautMax + NbStrat + Melange
## Res.Df RSS Df Sum of Sq F Pr(>F)
## 1 32 49.596
## 2 22 15.039 10 34.557 5.0553 0.0007441 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

On peut aussi regarder les significativités de chacune des variables.


Analyse du modèle : tests de nullité de paramètres II
summary(model.logY)

##
## Call:
## lm(formula = log(NbNids) ~ ., data = chenilles)
##
## Residuals:
## Min 1Q Median 3Q Max
## -1.69082 -0.27556 -0.02122 0.31358 1.74750
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 11.300912 3.156550 3.580 0.00167 **
## Altitude -0.004505 0.001563 -2.882 0.00865 **
## Pente -0.053606 0.021843 -2.454 0.02250 *
## NbPins 0.074581 0.100233 0.744 0.46470
## Hauteur -1.328277 0.570061 -2.330 0.02938 *
## Diametre 0.236101 0.104611 2.257 0.03428 *
## Densite -0.451118 1.572916 -0.287 0.77695
## Orient -0.187810 1.007950 -0.186 0.85389
## HautMax 0.185636 0.236344 0.785 0.44057
## NbStrat -1.266028 0.861235 -1.470 0.15572
## Melange -0.537203 0.773372 -0.695 0.49456
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.8268 on 22 degrees of freedom
## Multiple R-squared: 0.6968,Adjusted R-squared: 0.5589
## F-statistic: 5.055 on 10 and 22 DF, p-value: 0.0007441
Analyse du modèle : tests de nullité de paramètres III

▶ Ce tableau suggère de ne garder que les variables Altitude,


Pente, Hauteur et Diametre et l’intercept
▶ Raisonnement faux : ici chaque variable est testée
individuellement, on n’a pas fait le test global de
H0 : βj = 0 ∀j ∈ / J contre H1 : modèle complet, avec J = {
Altitude, Pente, Hauteur , Diametre }.
▶ Il faut tenir compte du fait que les variables sont corrélées !
Plan
Introduction et définition du modèle

Estimation des paramètres β

Analyse de la variance

Intervalles de confiance et tests

Diagnostics

Un exemple de régression : les chenilles processionaires de pins


Étude descriptive
Analyse basique
Prise en compte de la corrélation des prédicteurs
Modèles emboîtés
Prédicteurs normalisés I
chenilles.scaled <- data.frame(scale(chenilles[,-11]), NbNids=chenilles$NbNids)
model.scaled <- lm(log(NbNids)~., chenilles.scaled)
summary(model.scaled)

##
## Call:
## lm(formula = log(NbNids) ~ ., data = chenilles.scaled)
##
## Residuals:
## Min 1Q Median 3Q Max
## -1.69082 -0.27556 -0.02122 0.31358 1.74750
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -0.81328 0.14393 -5.651 1.11e-05 ***
## Altitude -0.58134 0.20169 -2.882 0.00865 **
## Pente -0.39152 0.15953 -2.454 0.02250 *
## NbPins 0.71124 0.95586 0.744 0.46470
## Hauteur -1.38243 0.59330 -2.330 0.02938 *
## Diametre 1.01584 0.45009 2.257 0.03428 *
## Densite -0.32361 1.12834 -0.287 0.77695
## Orient -0.03515 0.18862 -0.186 0.85389
## HautMax 0.43659 0.55585 0.785 0.44057
## NbStrat -0.71719 0.48788 -1.470 0.15572
## Melange -0.13359 0.19232 -0.695 0.49456
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.8268 on 22 degrees of freedom
## Multiple R-squared: 0.6968,Adjusted R-squared: 0.5589
## F-statistic: 5.055 on 10 and 22 DF, p-value: 0.0007441
Prédicteurs normalisés II

anova(model.scaled)

## Analysis of Variance Table


##
## Response: log(NbNids)
## Df Sum Sq Mean Sq F value Pr(>F)
## Altitude 1 14.1222 14.1222 20.6589 0.0001593 ***
## Pente 1 6.7095 6.7095 9.8152 0.0048376 **
## NbPins 1 1.4175 1.4175 2.0736 0.1639516
## Hauteur 1 1.8035 1.8035 2.6383 0.1185567
## Diametre 1 8.0480 8.0480 11.7732 0.0023866 **
## Densite 1 0.1353 0.1353 0.1979 0.6608026
## Orient 1 0.0385 0.0385 0.0563 0.8146664
## HautMax 1 0.0001 0.0001 0.0001 0.9910625
## NbStrat 1 1.9528 1.9528 2.8567 0.1051153
## Melange 1 0.3298 0.3298 0.4825 0.4945619
## Residuals 22 15.0389 0.6836
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Attention : quand on appelle la fonction anova() sur un seul


modèle MJ qui contient toutes les variables d’un ensemble J, R
compare sur chaque ligne j ∈ J, le modèle M\j où la variable j est
omise, avec le modèle MJ .
Prédicteurs normalisés
Étude des corrélation

heatmap(var(chenilles.scaled[, -11]))

Densite
NbPins
NbStrat
HautMax
Altitude
Hauteur
Diametre
Pente
Orient
Melange
Melange
Orient
Pente
Diametre
Hauteur
Altitude
HautMax
NbStrat
NbPins
Densite
Interprétation et prédicteurs corrélés I

Remarques
▶ les paramètres mal estimés (grande variance) sont ceux dont
les variables ont des corrélations élevées (densité, nb pins, nb
strates, HautMax)
⇝ S’il y a un effet, il est caché par la redondance

▶ les variables faiblement corrélées (pente, orientation, mélange)


sont mieux estimées
⇝ On peut conclure sur leur effet sur le nombre de nids.

⇝ ce constat n’est possible que sur données normalisées.


Plan
Introduction et définition du modèle

Estimation des paramètres β

Analyse de la variance

Intervalles de confiance et tests

Diagnostics

Un exemple de régression : les chenilles processionaires de pins


Étude descriptive
Analyse basique
Prise en compte de la corrélation des prédicteurs
Modèles emboîtés
Comparaison de sous-modèles I

M0 <- lm(log(NbNids)~1, chenilles)


M11 <- lm(log(NbNids)~Pente, chenilles)
anova(M0, M11)

## Analysis of Variance Table


##
## Model 1: log(NbNids) ~ 1
## Model 2: log(NbNids) ~ Pente
## Res.Df RSS Df Sum of Sq F Pr(>F)
## 1 32 49.596
## 2 31 40.450 1 9.1464 7.0097 0.01263 *
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Comparaison de sous-modèles II

M12 <- lm(log(NbNids)~Altitude, chenilles)


anova(M0, M12)

## Analysis of Variance Table


##
## Model 1: log(NbNids) ~ 1
## Model 2: log(NbNids) ~ Altitude
## Res.Df RSS Df Sum of Sq F Pr(>F)
## 1 32 49.596
## 2 31 35.474 1 14.122 12.341 0.001384 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Comparaison de sous-modèles III

M13 <- lm(log(NbNids)~Diametre, chenilles)


anova(M0, M13)

## Analysis of Variance Table


##
## Model 1: log(NbNids) ~ 1
## Model 2: log(NbNids) ~ Diametre
## Res.Df RSS Df Sum of Sq F Pr(>F)
## 1 32 49.596
## 2 31 47.594 1 2.0025 1.3043 0.2622
Comparaison de sous-modèles IV

M21 <- lm(log(NbNids)~Altitude+Pente, chenilles)


anova(M0, M12, M21)

## Analysis of Variance Table


##
## Model 1: log(NbNids) ~ 1
## Model 2: log(NbNids) ~ Altitude
## Model 3: log(NbNids) ~ Altitude + Pente
## Res.Df RSS Df Sum of Sq F Pr(>F)
## 1 32 49.596
## 2 31 35.474 1 14.1222 14.7288 0.0005951 ***
## 3 30 28.764 1 6.7095 6.9978 0.0128642 *
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Warning : ici on appelle la fonction avec 3 modèles ! Attention à


l’interprétation. R fait quelque chose d’inattendu.
Comparaison de sous-modèles V

M22 <- lm(log(NbNids)~Altitude+Diametre, chenilles)


anova(M0, M12, M22)

## Analysis of Variance Table


##
## Model 1: log(NbNids) ~ 1
## Model 2: log(NbNids) ~ Altitude
## Model 3: log(NbNids) ~ Altitude + Diametre
## Res.Df RSS Df Sum of Sq F Pr(>F)
## 1 32 49.596
## 2 31 35.474 1 14.1222 11.9877 0.001632 **
## 3 30 35.342 1 0.1322 0.1122 0.739932
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Comparaison de sous-modèles VI
M3 <- lm(log(NbNids)~Altitude+Diametre+Pente, chenilles)
anova(M22, M3)

## Analysis of Variance Table


##
## Model 1: log(NbNids) ~ Altitude + Diametre
## Model 2: log(NbNids) ~ Altitude + Diametre + Pente
## Res.Df RSS Df Sum of Sq F Pr(>F)
## 1 30 35.342
## 2 29 28.742 1 6.5994 6.6586 0.0152 *
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

anova(M21, M3)

## Analysis of Variance Table


##
## Model 1: log(NbNids) ~ Altitude + Pente
## Model 2: log(NbNids) ~ Altitude + Diametre + Pente
## Res.Df RSS Df Sum of Sq F Pr(>F)
## 1 30 28.764
## 2 29 28.742 1 0.022081 0.0223 0.8824
Proposition de modèle final I

summary(M21)

##
## Call:
## lm(formula = log(NbNids) ~ Altitude + Pente, data = chenilles)
##
## Residuals:
## Min 1Q Median 3Q Max
## -2.2783 -0.8041 0.2387 0.7057 1.6412
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 7.225158 1.836220 3.935 0.000457 ***
## Altitude -0.004717 0.001351 -3.491 0.001512 **
## Pente -0.063155 0.023874 -2.645 0.012864 *
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.9792 on 30 degrees of freedom
## Multiple R-squared: 0.42,Adjusted R-squared: 0.3814
## F-statistic: 10.86 on 2 and 30 DF, p-value: 0.0002826
Proposition de modèle final II
par(mfrow=c(2,2)); plot(M21)

Residuals vs Fitted Normal Q−Q


2

Standardized residuals

2
20 20
1

1
Residuals

0
−1

−1
32
−2

32

−2
33
33

−2.5 −2.0 −1.5 −1.0 −0.5 0.0 0.5 −2 −1 0 1 2

Fitted values Theoretical Quantiles

Scale−Location Residuals vs Leverage


0.5
Standardized residuals

1.5

33 Standardized residuals

2
20
20 32
21
1
1.0

0
−2 −1
0.5

0.5
33
0.0

Cook's distance

−2.5 −2.0 −1.5 −1.0 −0.5 0.0 0.5 0.00 0.05 0.10 0.15 0.20

Fitted values Leverage


Plan

Introduction et définition du modèle

Estimation des paramètres β

Analyse de la variance

Intervalles de confiance et tests

Diagnostics

Un exemple de régression : les chenilles processionaires de pins

Un exemple d’Anova : durée de vie des piles


Durée de vie des piles I

Nous disposons d’un jeu de données des durées de vie (en heures)
de 36 piles en fonction de deux facteurs :
▶ type de matériau de la pile : trois types (1, 2 ou 3) ;
▶ température d’utilisation de la pile : trois niveaux de
température : bas (-10°C), moyen (20°C) ou élevé (45°C).

piles <-read.table(file="data/piles_duree.txt",header=T,stringsAsFactors=T)
summary(piles)

## duree materiau temp


## Min. : 20.0 Min. :1 bas :12
## 1st Qu.: 70.0 1st Qu.:1 haut :12
## Median :108.0 Median :2 moyen:12
## Mean :105.5 Mean :2
## 3rd Qu.:141.8 3rd Qu.:3
## Max. :188.0 Max. :3
Durée de vie des piles II

Le matériau n’est pas correctement encodé comme un facteur ;


modifions cela

piles[,2] <- as.factor(piles$materiau)


summary(piles)

## duree materiau temp


## Min. : 20.0 1:12 bas :12
## 1st Qu.: 70.0 2:12 haut :12
## Median :108.0 3:12 moyen:12
## Mean :105.5
## 3rd Qu.:141.8
## Max. :188.0
Étude du facteur température I

Estimation de l’effet du facteur température


levels(piles$temp)

## [1] "bas" "haut" "moyen"

mod_temp <- lm(duree~temp,data=piles)


mod_temp

##
## Call:
## lm(formula = duree ~ temp, data = piles)
##
## Coefficients:
## (Intercept) temphaut tempmoyen
## 144.83 -80.67 -37.25

Rappel : les coefficients ne peuvent pas être testés individuellement


(pas de sens).
Question : Quel modèle a-t-on ajusté ici ?
Étude du facteur température II

▶ La durée de vie moyenne d’une pile utilisée à basse


température est de 144,83 heures ;
▶ Celle d’une pile utiliséé à température moyenne est de 37,25
heures moins longue que pour une pile utilisée à basse
température ;
▶ Celle d’une pile utiliséé à haute température est de 80,67
heures moins longue que pour une pile utilisée à basse
température.
Étude du facteur température III

Significativité de l’effet du facteur température


anova(mod_temp)

## Analysis of Variance Table


##
## Response: duree
## Df Sum Sq Mean Sq F value Pr(>F)
## temp 2 39119 19559.4 16.753 9.513e-06 ***
## Residuals 33 38528 1167.5
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Comprendre et interpréter les résultats


▶ Comprenez-vous les valeurs données pour les degrés de liberté ?
▶ Quel est le test effectué ici ? Que conclure ?
Étude du facteur matériau
levels(piles$materiau)

## [1] "1" "2" "3"

mod_mat <- lm(duree~materiau,data=piles)


mod_mat

##
## Call:
## lm(formula = duree ~ materiau, data = piles)
##
## Coefficients:
## (Intercept) materiau2 materiau3
## 83.17 25.17 41.92

anova(mod_mat)

## Analysis of Variance Table


##
## Response: duree
## Df Sum Sq Mean Sq F value Pr(>F)
## materiau 2 10684 5341.9 2.6325 0.08695 .
## Residuals 33 66963 2029.2
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Modèle additif pour température et matériau
add_temp_mat <- lm(duree~temp+materiau,data=piles)
add_temp_mat

##
## Call:
## lm(formula = duree ~ temp + materiau, data = piles)
##
## Coefficients:
## (Intercept) temphaut tempmoyen materiau2 materiau3
## 122.47 -80.67 -37.25 25.17 41.92

anova(add_temp_mat)

## Analysis of Variance Table


##
## Response: duree
## Df Sum Sq Mean Sq F value Pr(>F)
## temp 2 39119 19559.4 21.7759 1.239e-06 ***
## materiau 2 10684 5341.9 5.9472 0.006515 **
## Residuals 31 27845 898.2
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Remarquez que le résultat pour un facteur donné n’est pas le même


Modèle avec interaction pour température et matériau I

inter_temp_mat <- lm(duree~temp*materiau,data=piles)


inter_temp_mat

##
## Call:
## lm(formula = duree ~ temp * materiau, data = piles)
##
## Coefficients:
## (Intercept) temphaut tempmoyen
## 134.75 -77.25 -77.50
## materiau2 materiau3 temphaut:materiau2
## 21.00 9.25 -29.00
## tempmoyen:materiau2 temphaut:materiau3 tempmoyen:materiau3
## 41.50 18.75 79.25
Modèle avec interaction pour température et matériau II

anova(inter_temp_mat)

## Analysis of Variance Table


##
## Response: duree
## Df Sum Sq Mean Sq F value Pr(>F)
## temp 2 39119 19559.4 28.9677 1.909e-07 ***
## materiau 2 10684 5341.9 7.9114 0.001976 **
## temp:materiau 4 9614 2403.4 3.5595 0.018611 *
## Residuals 27 18231 675.2
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Là encore, avec les interactions, les modèles testés ne sont pas les
mêmes. Décrivez chaque test.
Quelques diagnostics I

▶ Dans le cas de variables explicatives qui sont des facteurs, on


ne peut pas faire de transformation de ces variables (pas de
sens)
▶ On ne peut pas non plus visualiser les observations atypiques
sur un graphe de régression.

par(mfrow=c(2,2))
plot(lm(duree~temp*materiau,data=piles))
Quelques diagnostics II

Residuals vs Fitted Normal Q−Q

Standardized residuals
4 4

2
20

1
Residuals

0
−20

9 9

−2
−60

3
3

60 80 100 120 140 160 −2 −1 0 1 2

Fitted values Theoretical Quantiles

Constant Leverage:
Scale−Location Residuals vs Factor Levels
Standardized residuals

Standardized residuals
1.5

2
4
9

1
1.0

−1 0
0.5

3
−3
0.0

temp :
60 80 100 120 140 160 bas haut moyen

Fitted values Factor Level Combinations

Vous aimerez peut-être aussi