next up previous contents
Next: Modèles linéaires: lm() Up: Les modèles dans Previous: Les modèles dans

Formules

Une partie intégrale des modèles sont les formules. Ce sont des expressions symboliques qui traduisent la dépendance entre une variable réponse et plusieurs prédicteurs. Par exemple, la formule

Recolte ~ Temp + Conc

se lit: ``La Recolte est modélisée en fonction de Temp (la température) et Conc (la concentration)''. La modélisation est additive. La formule
Recolte/100 ~ sqrt(Temp) + poly(Conc,2)

se traduit par: ''La Recolte divisée par 100 est modélisée en fonction de la racine carrée de Temp plus un polynôme quadratique en Conc''. Notez que les variables qui représentent les facteurs sont directement converties en variables indicatrices.
La fonction as.factor() vous permet de définir qu'une variable est catégorique, is.factor() de tester si une variable est déjà un facteur ou non. Consultez help(C) pour définir quelle transformation en variables indicatrices (c'est-à-dire quel contraste) il faudra utiliser. Pour avoir les contraintes habituelles (qui sont différentes de celles par défaut) sur les paramètres d'une ANOVA, écrivez options(contrasts=c("contr.sum","contr.treatment")).

Le tableau suivant présente un résumé (non exhaustif) de la syntaxe des formules. Supposez que y et x, x1, x2, ... sont des variables numériques, X une matrice et A, B, C, ... des facteurs.




y ~ x et y ~ 1 + x

Modèles linéaires simples y sur x, avec ordonnée à l'origine

y ~ -1 + x et y ~ x - 1

Modèles linéaires simples y sur x forcé par l'origine

log(y) ~ x1 + x2

Modèle linéaire multiple, avec log(y) sur x1 et x2

y ~ poly(x1,2) + I(x2**2)

Modéle linéaire multiple, polynomial de degré 2 sur x1 et sur x2^2

y ~ A

Typiquement une analyse de variance à une voie (facteur A)

y ~ A + x

Analyse de covariance: A est le facteur, x la covariable

y ~ A*B et y ~ A+B+A:B

Deux manières équivalentes pour une analyse de variance à deux voies avec interactions

y ~ (A+B+C)**2 et y ~ A*B*C-A:B:C

Deux manières équivalentes pour une analyse de variance à trois voies sans interactions de degré 3


Vous pouvez sauver vos formules avec formula(): écrivez f1 <- formula(y ~ x+y) et utilisez un des modèles décrits dans les deux prochains chapitres, par exemple lm(f1,data=X).



Marcel Baumgartner