I. Le tableau croisé
Une variable qualitative décrit une catégorie, et non une quantité : la couleur des yeux, la filière choisie, le fait d'être abonné ou non. Croiser deux variables qualitatives revient à compter les individus qui possèdent en même temps une modalité de la première et une modalité de la seconde.
Un tableau croisé range les effectifs selon deux caractères : les modalités du premier en lignes, celles du second en colonnes. La dernière ligne et la dernière colonne contiennent les totaux, appelés effectifs marginaux.
| demi-pensionnaire | externe | total | |
|---|---|---|---|
| Seconde | |||
| Première | |||
| Terminale | |||
| total |
Chaque case intérieure compte les élèves qui vérifient les deux conditions à la fois. Les totaux se lisent en marge, d'où le nom d'effectifs marginaux.
Un tableau croisé est très contraint : chaque total est la somme de sa ligne ou de sa colonne. Une case manquante se retrouve donc par soustraction, à condition de repérer la ligne ou la colonne où une seule valeur est inconnue, puis de progresser de proche en proche.
II. Fréquences marginales et conditionnelles
Une fréquence marginale est la proportion d'une modalité dans la population entière. Elle s'obtient en divisant un effectif marginal par l'effectif total.
Une fréquence conditionnelle est la proportion d'une modalité calculée à l'intérieur d'une sous-population. Elle s'obtient en divisant un effectif du tableau par le total de la ligne ou de la colonne choisie comme référence.
Reprenons le tableau précédent.
La fréquence marginale des demi-pensionnaires vaut , soit des élèves du lycée.
La fréquence des demi-pensionnaires parmi les élèves de Seconde vaut également, mais elle porte sur une autre population de référence.
La fréquence des élèves de Seconde parmi les demi-pensionnaires vaut, elle, .
Les deux dernières fréquences de l'exemple utilisent le même effectif , mais elles ne répondent pas à la même question et ne donnent pas le même résultat. Avant tout calcul, il faut identifier la population de référence, c'est-à-dire ce qui suit le mot « parmi ».
Comparer les fréquences conditionnelles ligne par ligne permet de voir si les deux caractères semblent liés. Si la proportion de demi-pensionnaires est la même dans chaque niveau, le fait d'être demi-pensionnaire ne dépend pas du niveau. Cette idée sera reprise en Première avec l'indépendance en probabilité.
III. Filtrer une population avec un programme
Lorsque les données proviennent d'un fichier, le comptage se programme. Les deux caractères sont alors donnés par deux listes de même longueur, la case de rang décrivant le même individu dans les deux listes.
def effectif_croise(niveaux, regimes, niveau, regime):
compteur = 0
for i in range(len(niveaux)):
if niveaux[i] == niveau and regimes[i] == regime:
compteur = compteur + 1
return compteur
L'appel effectif_croise(niveaux, regimes, "Seconde", "DP") renvoie l'effectif d'une case du tableau croisé.
def frequence_conditionnelle(niveaux, regimes, niveau, regime):
total_niveau = niveaux.count(niveau)
return effectif_croise(niveaux, regimes, niveau, regime) / total_niveau
Le dénominateur choisi fixe la population de référence : ici, les élèves du niveau demandé.
Passer à la pratique
9 exercices corrigés sur ce chapitre.
