Tests de proportion à un échantillon

Tests d'hypothèse en R

Richie Cotton

Data Evangelist at DataCamp

Récapitulatif du chapitre 1

  • Une affirmation sur une proportion de population inconnue est-elle plausible ?
  • Erreur-type de la statistique d'échantillon calculée à partir de la distribution bootstrap.
  • Utilisée pour calculer une statistique de test normalisée, ...
  • puis pour obtenir une valeur p, ...
  • puis pour choisir l'hypothèse la plus sensée.
  • Ici, nous calculerons la statistique de test sans utiliser la distribution bootstrap.
Tests d'hypothèse en R

Statistique de test normalisée pour des proportions

$p$ : proportion dans la population (paramètre inconnu)

$\hat{p}$ : proportion dans l'échantillon (statistique d'échantillon)

$p_{0}$ : proportion postulée dans la population

$$ z = \frac{\hat{p} - \text{mean}(\hat{p})}{\text{standard error}(\hat{p})} = \frac{\hat{p} - p}{\text{standard error}(\hat{p})} $$

En supposant que $H_{0}$ est vraie, $p = p_{0}$, donc

$$ z = \dfrac{\hat{p} - p_{0}}{\text{standard error}(\hat{p})} $$

Tests d'hypothèse en R

Calculs d'erreur-type simplifiés

$SE(\bar{x}_{\text{child}} - \bar{x}_{\text{adult}}) \approx \sqrt{\dfrac{s_{\text{child}}^2}{n_{\text{child}}} + \dfrac{s_{\text{adult}}^2}{n_{\text{adult}}}}$

$SE_{\hat{p}} = \sqrt{\dfrac{p_{0}*(1-p_{0})}{n}}$

En supposant que $H_{0}$ est vraie,

$z = \dfrac{\hat{p} - p_{0}}{\sqrt{\dfrac{p_{0}*(1-p_{0})}{n}}}$

Ceci n'utilise que l'information de l'échantillon ($\hat{p}$ et $n$) et le paramètre supposé ($p_{0}$).

Tests d'hypothèse en R

Pourquoi z plutôt que t ?

$t = \dfrac{(\bar{x}_{\text{child}} - \bar{x}_{\text{adult}})}{\sqrt{\dfrac{s_{\text{child}}^2}{n_{\text{child}}} + \dfrac{s_{\text{adult}}^2}{n_{\text{adult}}}}}$

  • $s$ est calculé à partir de $\bar{x}$ ; $\bar{x}$ sert donc à estimer la moyenne populationnelle et l'écart-type populationnel.
  • Cela accroît l'incertitude de l'estimation du paramètre.
  • La loi t a des queues plus épaisses que la loi normale.
  • Cela ajoute un degré de prudence.
  • $\hat{p}$ n'apparaît qu'au numérateur, donc les scores z conviennent.
Tests d'hypothèse en R

Catégories d'âge sur Stack Overflow

$H_{0}$ : La proportion d'utilisateurs de SO de moins de trente ans est égale à 0,5.

$H_{A}$ : La proportion d'utilisateurs de SO de moins de trente ans n'est pas égale à 0,5.

alpha <- 0.01
stack_overflow %>% 
  count(age_cat)
# A tibble: 2 x 2
  age_cat         n
  <chr>       <int>
1 At least 30  1050
2 Under 30     1216
Tests d'hypothèse en R

Variables pour z

p_hat <- stack_overflow %>%
  summarize(prop_under_30 = mean(age_cat == "Under 30")) %>%
  pull(prop_under_30)
0.5366
p_0 <- 0.50
n <- nrow(stack_overflow)
2266
Tests d'hypothèse en R

Calcul du score z

$z = \dfrac{\hat{p} - p_{0}}{\sqrt{\dfrac{p_{0}*(1-p_{0})}{n}}}$

numerator <- p_hat - p_0
denominator <- sqrt(p_0 * (1 - p_0) / n)
z_score <- numerator / denominator
3.487
Tests d'hypothèse en R

Calcul de la valeur p

FDR de la loi normale. La partie de la courbe inférieure à -2 est en rouge et celle supérieure à 2 est en vert. Unilatéral gauche (« plus petit que »)

p_value <- pnorm(z_score) 

Unilatéral droit (« plus grand que »)

p_value <- pnorm(z_score, lower.tail = FALSE)

Bilatéral (« différent de »)

p_value <- pnorm(z_score) + 
  pnorm(z_score, lower.tail = FALSE)
p_value <- 2 * pnorm(z_score)
0.000244
p_value <= alpha
TRUE
Tests d'hypothèse en R

Passons à la pratique !

Tests d'hypothèse en R

Preparing Video For Download...