Exercice 1

Les données renfe contiennent des informations sur 10K billets de trains vendus par la compagnie Renfe, l’entreprise ferroviaire publique espagnole. Les données incluent les variables:

Exercice 1.1

On considère le temps de parcours pour les trains à grande vitesse (AVE} etAVE-TGV}). La vraie moyenne théorique de la « population » est de \(\mu=2.845\) heures; ces quantités ont été déterminées sur la base des données complète contenant plus de 2.3 millions d’entrées et sont donc considérées comme connues, contrairement à la plupart des applications pratiques.

Une étude de simulation a été conduite pour déterminer le comportement de tests pour un échantillon. L’algorithme suivant a été répété 10K fois:

  • sélection d’un sous-échantillon de taille \(n=100\).
  • calcul de la statistique du test-\(t\) pour un échantillon correspondant à \(\mathscr{H}_0: \mu=\mu_0\) (versus \(\mathscr{H}_0: \mu \neq \mu_0\)) pour différentes valeurs de \(\mu_0\).
  • sauvegarde des valeurs-\(p\) associées au test.

La Figure 1 montre le pourcentage de valeur-\(p\) parmi les 10K qui sont plus petites que 0.05, c’est-à-dire la proportion de rejet (à un niveau de \(5\)%) de \(\mathscr{H}_0:\mu=\mu_0\) contre l’alternative bilatérale à \(\mu_0 \in \{2.83, 2.835, 2.84, \ldots, 2.995, 3\}\). Utilisez la courbe de puissance (Figure 1) afin de répondre aux questions suivantes:

  1. Expliquez pourquoi la proportion de rejet de chaque test augmente quand on se déplace vers la droite sur le graphique.
  2. Supposez que l’on répète l’expérience de simulation, mais cette fois avec des sous-échantillons aléatoires de taille \(n=1000\). Comment est-ce que les points pour le test-\(t\) pour un échantillon se compareraient à ceux tracés sur le graphique? Seraient-ils en dessous, à la même hauteur ou au dessus?
  3. Expliquez pourquoi la valeur sur le graphique ppour un échantillon devrait être approximativement 0.05 dans un voisinage de \(\mu=2,845\).
  4. Produisez un diagramme quantile-quantile normal et commentez sur la robustesse du test-\(t\) à des déviations de l’hypothèse de normalité.
Code
library(ggplot2)
## Exercice 1.1
data(renfe, package = "hecmodstat")
# Sélectionner un sous-échantillon de trains à haute vitesse
donnees <- renfe |> dplyr::filter(type %in% c("AVE","AVE-TGV"))
# Transformer la durée en heures
duree <- donnees$duree / 60
# Compute summary statistics of the duration
moy_d <- mean(duree);

# Étude de puissance
B <- 1e4L # nombre de simulations (10 000)
n <- nrow(donnees)
m <- 100L # taille du sous-échantillon
alpha <- 0.05 # niveau du test
# Créer une grille de durées pour le temps moyen sous l'alternative
temps <- sort(c(moy_d, seq(from = 2.83, to = 3, by = 0.005)))
# Créer un contenant pour stocker les résultats
puissance <- matrix(nrow = B, ncol = length(temps))
# Fixer le germe aléatoire pour s'assurer de résultats reproductibles
set.seed(2020)
for(i in seq_len(B)){ # pour chaque réplication
  for(j in seq_along(temps)){ # pour chaque alternative
    # Test-t pour un échantillon
    puissance[i,j] <-  t.test(x = duree[sample.int(n = n, size = m)],
                          mu = temps[j])$p.value
    # Stocker les valeurs-p
  }
}
# Créer un graphique de la puissance
ggplot(data = data.frame(temps = temps,
                         puissance = colMeans(puissance < alpha)),
       mapping = aes(x = temps, y = puissance)) +
  geom_point() +
  geom_vline(xintercept = 2.845, linetype = "dashed") +
  geom_hline(yintercept = alpha) +
  labs(x = "durée moyenne de trajet (en heures)",
       y = "",
       subtitle = "Puissance du test-t en fonction de la durée moyenne de trajet postulée.") +
  scale_y_continuous(limits = c(0,1),
                     expand = expansion(add = 0.01)) +
  theme_classic()
Figure 1: Courbe de puissance pour le test-\(t\) pour un échantillon en fonction du temps de parcours (en heures). La ligne horizontale grise est située à 0.05, tandis que la ligne traitillée verticale marque la vraie moyenne \(\mu\).

Exercice 1.2

Supposez que l’on veut comparer le tarif moyen pour les trains à grande vitesse pour les deux destinations, soit de Madrid vers Barcelone et le trajet inverse de Barcelone à Madrid. Une étude de simulation a été réalisée dans laquelle le test de Welch pour deux échantillons a été calculé sur des sous-échantillons aléatoires de taille \(n=1000\). Les données renfe_simu contiennent les différences moyennes (difmoy), les statistiques de test (Wstat), les valeurs-\(p\) (valp) et les intervalles de confiance à 95% (icbi et icbs) pour 1000 répétitions. Supposez que l’on sait que la vraie différence moyenne dans la population est de \(-0,28\)€. Utilisez les données simulées pour répondre aux questions suivantes et commentez brièvement sur chaque sous-question.

  1. Quel est le taux de couverture empirique des intervalles de confiance à 95% (c’est-à-dire le pourcentage des intervalles couvrant la valeur de la « vraie » différence moyenne)?
  2. Tracez un histogramme des différences moyennes et superposez la vraie différence moyenne à l’aide d’un trait vertical.
  3. Calculez la puissance du test (pourcentage de rejet de l’hypothèse nulle sous l’hypothèse alternative).

Exercice 1.3

À l’aide des données renfe, testez si le prix moyen du billet pour un train de classe AVE-TGV est le même que celui d’un train régio-express (REXPRESS). Veillez à

  • énoncer l’hypothèse nulle et l’hypothèse alternative,
  • justifier avec soin le choix de votre statistique de test,
  • rapporter la différence moyenne estimée et un intervalle à 90% pour cette différence,
  • conclure dans le cadre de la mise en situation.