-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy path06-croisement-var-quant-var-qual.Rmd
61 lines (44 loc) · 2.85 KB
/
06-croisement-var-quant-var-qual.Rmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
# Lien variable quantitative - variable qualitative
## Statistiques en fonction d'un facteur
Par exemple, calculer la population totale (moyenne, médiane...) des communes pour chaque type ZAU.
```{r agregat, echo = F}
ag <- dat %>% group_by(ZAU) %>%
summarise(pop_moy = mean(P14_POP, na.rm = T),
dens_med = median(P14_POP, na.rm = T),
nb_com = n())
print(ag)
```
## Eléments théoriques
- Soit X une variable continue, et Y $\in \{1, ..., k\}$ une variable qualitatives à k modalités
- Dans chaque classe j : $\bar{X_j}=\mathbb{E}(X/Y=j)$ et $\sigma_j^2 = \mathbb{V}(X/Y=j)$
- Variance intraclasse : $V_{intra} = \dfrac{1}{n}\sum_{j=1}^k n_j \sigma_j^2$, moyenne (pondérée) des variances de chaque classe
- Variance interclasse : $V_{inter} = \dfrac{1}{n}\sum_{j=1}^k n_j (\bar{x_j}-\bar{x})^2$, variance (pondérée) des moyennes de chaque classe
- Rapport de corrélation : $\eta^2 = \dfrac{V_{inter}}{V_{Totale}}= \dfrac{V_{inter}}{V_{inter}+V_{intra}}$
- C'est le $R^2$ de l'anova de X par Y
## Représentation graphique
Pour réprésenter graphiquement le croisement d'une variable qualitative avec une variable quantitative, il existe plusieurs moyens.
- La fonction `geom_boxplot()` produit la boîte à moustaches pour visualiser, pour chaque modalités de la variable qualitative, la distribution de la variable quantitative. La barre la plus basse de la boîte indique Q1 (pourcentile 25%), le trait au milieu indique la médiane, et la barre supérieur de la boîte indique Q3.
```{r boxplot, warning = FALSE, message = FALSE}
dat <- dat %>%
mutate (densite = P14_POP / SUPERF,
log_dens = log10 (densite+0.00000001))
ggplot (data = dat, aes (y = log (densite), x = ZAU2, fill = ZAU2)) +
geom_boxplot () +
coord_flip () + # pour plus de lisibilité
theme (legend.position = "none") # supprime la légende
```
- Le *violinplot* (fonction `geom_violin()`) fonctionne sur le même principe. Les boîtes à moustaches sont remplacées par des graphiques en *violon*, qui représentent la densité de distribution de la variables quantitatives.
```{r violinplot, warning = FALSE, message = FALSE}
ggplot (data = dat, aes (y = log (densite), x = ZAU2, fill = ZAU2)) +
geom_violin () +
coord_flip () +
theme (legend.position = "none")
```
## Calcul du rapport de corrélation
Le **rapport de corrélation** est une mesure de la force de la liaison existant entre une variable quantitative et une variable qualitative. Il est similaire au coefficient de corrélation. Il se définit comme suit : $\hat{\eta}^2 = \frac{VarInter}{VarTotale}$.
Pour le calculer, on peut appliquer la fonction `etaSquared()` sur un objet de type anova.
Si on veut quantifier le lien éventuel entre la densité de population et les ZAU, on fait donc :
```{r}
anova <- aov (densite ~ ZAU2, data = dat)
etaSquared (anova) # package lsr comme le v de cramer
```