Au vu des questions qui m'ont été posées en cours d'économétrie, j'ai
décidé de faire un petit billet afin d'expliciter ce que
j'ai pu raconter dans les premiers slides de remise à niveau
de probabilité et de statistiques, en Master 1, où
j'essayais de faire le lien entre le modèle probabiliste et
l'analyse statistique, à partir du schéma
(forcément simpliste) suivant
Pour mieux comprendre ce qu'est la modélisation, inspirons nous du papier de Joshua Angrist et Victor Lavy, "
using Maimonides' rule to estimate the effect the effect of class size on scholastic achivement" (publié que le QJE en 1999, en ligne
ici ou
là pour des transparents).
- Partie 1: la problématique
La question que l'on se pose est simplement "
quel est l'impact de la taille d'une classe sur les résultats scolaires ? ".
Beaucoup de monde (je pense aux parents ou aux enseignants, pas
forcément aux ministres) pense que cet impact est réel,
et négatif, à savoir que plus la taille et grande, moins
bon sont les résultats, et inversement. Empiriquement, certaines
études ont toutefois trouvé un effet positif, car les
meilleurs élèves sont parfois regroupés dans les
classes les plus chargées.
Bref, on souhaite répondre à cette question en faisant une étude empirique. La
taille
de la classe est une donnée facile à utiliser et à
quantifier (encore que... le nombre sera celui au début du
printemps), mais les
résultats
désignent une notion plus floue. Heureusement, certains pays
diposent d'un test national (même s'il est parfois biaisé
car les crédits des écoles étant liés
à ces tests, certaines écoles semblent reforcer le
bachotage).
- Partie 2: les données (et le contexte)
Les données mises à disposition par Joshua Angrist et
Victor Lavy sont celles d'écoles publiques en Israël,
où deux tests ont été mis en oeuvre: un test
national en fin d'étude (en mathématiques et en lecture)
pour les élèves de CM1 et CM2 (4th et 5th grade) en 1991,
et un test national en 1992 pour les élèves de CE2 (3rd grade). Nous
n'avons pas des données individuelles (élève par
élève) mais par classe. Afin de corriger
d'éventuels effets exogènes (car on se doute que les
résutats ne sont pas
uniquement liés à la taille des classes), les auteurs utilisent des mesures de l'environnement social de l'école.

Voilà un peu pour les données, qui se trouvent ici et
là. Sur le contexte, une information importante: l'étude
se fait sur les écoles publiques israéliennes, où
l'on croit dur comme fer à un effet négatif. En effet,
depuis 1969, ces écoles appliquent (strictement) une règle talmudique
énoncée par le rabin Maionide (alias
Moshe ben Maimon, הרב משה בן מיימון, ou أبو عمران موسى بن ميمون بن عبد الله القرطبي الإسرائيلي ou
Moussa ibn Maimoun ibn Abdallah al-Kourtoubi al-Israili
dans la version arabe, plutôt connu pour ses réflexions en
médecine ou en santé publique) au 12ème
siècle, à savoir "
dès
qu'il y a plus de vingt cinq élèves dans une classe, il
faut un assistant; dès qu'il y a plus de quarante
élèves, il faut deux professeurs".
Une fois formulée la question, et une fois à notre
disposition un jeu de données pour faire une étude, on
peut mettre en oeuvre un test économétrique (ou
statistique).
- Partie 3: la formalisation du problème
On commencer par formaliser le problème. On note
le nombre d'élèves dans la classe
i au printemps (ce qui sera noté comme la taille de la classe). On retiendra une indexation

par école (
school) et par classe (
class). On note aussi
la note moyenne obtenue dans la classe lors des tests nationaux. On a aussi ces variables explicatives
où

désigne le nombre d'élèves dans l'école
pour chacun des niveaux,

un identifiant pour la ville,

une
variable indiquant le niveau socio-économique des
élèves, et

un identifiant éthnique (juif ou
arabe) et religieux (associé aux écoles). On notera que,
compte tenu que compte tenu de la règle de Maionide,
(1)
où la fonction

désigne la partie entière.
- Partie 4: l'étude économétrique, les moindres carrés
L'étude économétrique est une phase d'estimation
des paramètres du modèle formel. Mais auparavant, il est
toujours intéressant (car instructif) de faire un peu de
statistiques descriptives, en regardant quelques
graphiques.
On peut déjà se demander si la règle de Maionide
est effectivement mise en oeuvre dans les établissements
scolaires, c'est à dire regarder si l'équation
(1) est
valide,
Sur ce graphique, la courbe en trait
pointillé correspond à la loi théorique, c'est à dire la partie de droite dans l'équation
(1), et le trait
plein
correspond à la version empirique, c'est à dire la partie
de gauche. Dans un second temps, regardons sur le même type de
graphique
comment évolue la note moyenne dans la classe (avec toujours en
pointillé le nombre
théorique d'élèves dans la casse).
On note ici que les résultats aux tests sont
générallement plus élevé dans les classes
avec plus d'élèves dans l'école. Il faut aussi
noter que les très grosses écoles sont plutôt dans
des grandes villes riches, alors que les petites écoles sont des
"
development
town" beaucoup plus pauvres (et à l'extérieur des villes).
Bref, on voudrait pouvoir comprendre un peu mieux ce qui se passe... Pour cela , on (ou plutôt les auteurs) spécifie un
modèle économétrique sous la forme suivante
Autrement dit dans le premier terme

on va mettre tout ce qui, dans les aspects socio-économiques -
pourrait expliquer les résultats aux tests. Le terme du milieu

correspond à ce qui nous intéresse, à savoir
l'impact de la taille des classes les tests. Enfin, le terme de droite

correspond à une moyenne (par classe, mais aussi par école, afin de corriger d'un éventuel effet "
très bonne école") mais aussi un
bruit car, par définition d'un modèle, la modélisation est forcément imparfaite: il y aura
toujours des
effets que l'on ne pourra pas expliquer avec un modèle simple
(car on cherche un modèle simple, ou plutôt parcimonieux,
comme je l'évoquai ici).
Encore une fois, un modèle économétrique mesure une
corrélation (éventuelle) entre des variables explicatives et la variable que l'on essaye d'expliquer, mais l'
interprétation causale
est fallacieuse (je reviendrais sur ce point dans un billet
prochainement).
Mais
dans un premier temps,
on peut s'intéresser
à une
interprétation par moindres carrés du modèle, voire une simplification
du modèle, où l'on régresse uniquement les notes sur la taille de la
classe. Bon, on a accès aux données (
ici pour une version csv, ou
là pour l'ensemble des données).Contentons nous déjà d'un niveau (4e), et regardons
respectivement en lecture et en mathématique l'impact de la
taille de la classe. On commence par un petit nettoyage de la base de
données,
> base5=read.table("http://perso.univ-rennes1.fr/arthur.charpentier/Final4.csv",sep=";",header=TRUE)
> base=base5
> base$avgverb=base$avgverb-(base$avgverb>100)*100
> base$avgmath=base$avgmath-(base$avgmath>100)*100
> base$func1= base$c_size/(trunc((base$c_size-1)/40)+1)
> base$func2= base$cohsize/(trunc(base$cohsize/40)+1)
> base$verbsize[base$avgverb==NA]=0
> base$verbsize[base$passverb==NA]=0
> base$mathsize[base$avgmath==NA]=0
> base$mathsize[base$passmath==NA]=0
>
base0=base[(base$classize>1)&(base$classize<45)&(base$c_size>5)&(base$c_leom==1)&(base$c_pik<3),]
Enuiste, on peut tenter de faire une régression
> reg=lm(avgverb~classize,data=base0)
> summary(reg)
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 67.76309 0.78686 86.118 <2e-16 ***
classize 0.22119 0.02568 8.614 <2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 7.55 on 2016 degrees of freedom
(5 observations deleted due to missingness)
Multiple R-squared: 0.0355, Adjusted R-squared: 0.03502
F-statistic: 74.21 on 1 and 2016 DF, p-value: < 2.2e-16
On note effectivement que la taille de la classe a un effet sur le
nombre d'élèves, et que cet effet est croissant. On
peut visualiser ça graphiquement
> taille=seq(5,45,by=.1)
> note=predict(reg,newdata=data.frame(classize=taille),interval="confidence")
> plot(base0$classize,base0$avgverb,cex=.6)
> lines(taille,note[,2],lty=2,col="red")

On peut aussi faire une régression locale pour détecter d'éventuelles nonlinéairités,
> regL=loess(avgverb~classize,data=base0,span=.5)
> note=predict(regL,newdata=data.frame(classize=taille),interval="confidence")
> plot(base0$classize,base0$avgverb,cex=.6)
> lines(taille,note,col="blue")

Si on regarde pour la note en maths, on a un effet assez proche,
> reg=lm(avgmath~classize,data=base0)
> summary(reg)
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 57.36364 0.98724 58.10 <2e-16 ***
classize 0.33055 0.03222 10.26 <2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 9.472 on 2016 degrees of freedom
(5 observations deleted due to missingness)
Multiple R-squared: 0.04963, Adjusted R-squared: 0.04916
F-statistic: 105.3 on 1 and 2016 DF, p-value: < 2.2e-16

Mais
on se doute que quelque chose ne va pas, et que ce que l'on mesure ici
doit être lié à autre chose.... et il faudra aller plus loin (ce qui
fera l'objet d'un autre billet).