Tests t appariés

Tests d'hypothèse en R

Richie Cotton

Data Evangelist at DataCamp

Jeu de données sur les votes républicains aux É.-U.

state county repub_percent_08 repub_percent_12
Alabama Bullock 25.69 23.51
Alabama Chilton 78.49 79.78
Alabama Clay 73.09 72.31
Alabama Cullman 81.85 84.16
Alabama Escambia 63.89 62.46
Alabama Fayette 73.93 76.19
Alabama Franklin 68.83 69.68
... ... ... ...

500 lignes ; chaque ligne représente les votes par comté à une élection présidentielle.

1 https://dataverse.harvard.edu/dataset.xhtml?persistentId=doi:10.7910/DVN/VOQCHQ
Tests d'hypothèse en R

Hypothèses

Question : Le pourcentage de votes pour le candidat républicain était-il plus faible en 2008 qu'en 2012 ?

$H_{0}$ : $\mu_{2008} - \mu_{2012} = 0$

$H_{A}$ : $\mu_{2008} - \mu_{2012} < 0$

Fixer le seuil de signification à $\alpha = 0,05$.

Données appariées : chaque pourcentage se rapporte au même comté.

Tests d'hypothèse en R

De deux échantillons à un seul

sample_data <- repub_votes_potus_08_12 %>% 
  mutate(diff = repub_percent_08 - repub_percent_12)
ggplot(sample_data, aes(x = diff)) +
  geom_histogram(binwidth = 1)

Histogramme de la variable diff – la plupart des valeurs sont entre -10 et 10, avec quelques valeurs aberrantes.

Tests d'hypothèse en R

Calculer les statistiques d'échantillon de la différence

sample_data %>% 
  summarize(xbar_diff = mean(diff))
  xbar_diff
1 -2.643027
Tests d'hypothèse en R

Hypothèses révisées

Anciennes hypothèses

$H_{0}$ : $\mu_{2008} - \mu_{2012} = 0$

$H_{A}$ : $\mu_{2008} - \mu_{2012} < 0$

 

Nouvelles hypothèses

$H_{0}$ : $\mu_{\text{diff}} = 0$

$H_{A}$ : $ \mu_{\text{diff}} < 0$

$t = \dfrac{\bar{x}_{\text{diff}} - \mu_{\text{diff}}}{\sqrt{\dfrac{s_{diff}^2}{n_{\text{diff}}}}}$

$df = n_{diff} - 1$

Tests d'hypothèse en R

Calcul du p-value

n_diff <- nrow(sample_data)
s_diff <- sample_data %>% 
  summarize(sd_diff = sd(diff)) %>%
  pull(sd_diff)
t_stat <- (xbar_diff - 0) / sqrt(s_diff ^ 2 / n_diff)
-16.06374
degrees_of_freedom <- n_diff - 1
499

$t = \dfrac{\bar{x}_{\text{diff}} - \mu_{\text{diff}}}{\sqrt{\dfrac{s_{\text{diff}}^2}{n_{\text{diff}}}}}$

$df = n_{\text{diff}} - 1$

 

p_value <- pt(t_stat, df = degrees_of_freedom)
2.084965e-47
Tests d'hypothèse en R

Tester la différence entre deux moyennes avec t.test()

t.test(

# Vecteur des différences sample_data$diff,
# Choisir entre "two.sided", "less", "greater" alternative = "less",
# Paramètre de population sous H0 mu = 0
)
    One Sample t-test

data:  sample_data$diff
t = -16.064, df = 499, p-value < 2.2e-16
alternative hypothesis: true mean is less than 0
95 percent confidence interval:
     -Inf -2.37189
sample estimates:
mean of x 
-2.643027
Tests d'hypothèse en R

t.test() avec paired = TRUE

t.test(
  sample_data$repub_percent_08,
  sample_data$repub_percent_12,
  alternative = "less",
  mu = 0,
  paired = TRUE
)
    Paired t-test

data:  sample_data$repub_percent_08 and 
       sample_data$repub_percent_12
t = -16.064, df = 499, p-value < 2.2e-16
alternative hypothesis: true difference in means 
                        is less than 0
95 percent confidence interval:
     -Inf -2.37189
sample estimates:
mean of the differences 
              -2.643027
Tests d'hypothèse en R

t.test() non apparié

t.test(
  x = sample_data$repub_percent_08,
  y = sample_data$repub_percent_12,
  alternative = "less",
  mu = 0
)

Le test t non apparié a plus de risque de faux négatif (puissance statistique moindre).

    Welch Two Sample t-test

data:  sample_data$repub_percent_08 and 
       sample_data$repub_percent_12
t = -2.8788, df = 992.76, p-value = 0.002039
alternative hypothesis: true difference in means
                        is less than 0
95 percent confidence interval:
      -Inf -1.131469
sample estimates:
mean of x mean of y 
 56.52034  59.16337 
Tests d'hypothèse en R

Passons à la pratique !

Tests d'hypothèse en R

Preparing Video For Download...