CommencezCommencez gratuitement

Régression linéaire du temps moyen par relais

Nous supposerons que les nageurs et nageuses ralentissent de façon linéaire au fil de l'épreuve de 800 m. Le ralentissement par relais correspond alors à la pente du graphique du temps moyen par relais en fonction du numéro de relais. Effectuez une régression linéaire pour estimer le ralentissement par relais et calculez un intervalle de confiance bootstrap par paires à 95 % sur ce ralentissement. Présentez aussi un tracé de la droite de meilleure adéquation.

Note : Nous pourrions calculer des barres d'erreur pour les temps moyens par relais et les utiliser dans l'analyse de régression, mais nous ne les prendrons pas en compte ici, car cela dépasse la portée de ce cours.

Cette activité fait partie du cours

Études de cas en pensée statistique

Voir le cours

Instructions de l’exercice

  • Utilisez np.polyfit() pour effectuer une régression linéaire et obtenir le ralentissement par relais. Les variables split_number et mean_splits sont déjà dans votre espace de noms. Stockez respectivement la pente et l'ordonnée à l'origine dans slowdown et split_3.
  • Utilisez dcst.draw_bs_pairs_linreg() pour calculer 10 000 réplicats bootstrap par paires du ralentissement par relais. Stockez le résultat dans bs_reps. Les réplicats bootstrap de l'ordonnée à l'origine ne sont pas pertinents pour cette analyse; vous pouvez donc les stocker dans la variable poubelle _.
  • Calculez l'intervalle de confiance à 95 % du ralentissement par relais.
  • Tracez le numéro de relais (split_number) en fonction du temps moyen par relais (mean_splits) sous forme de points, ainsi que la droite de meilleure adéquation.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# Perform regression
____, ____ = ____

# Compute pairs bootstrap
bs_reps, _ = ____

# Compute confidence interval
conf_int = ____

# Plot the data with regressions line
_ = ____(____, ____, marker='.', linestyle='none')
_ = ____(____, ____ * ____ + ____, '-')

# Label axes and show plot
_ = plt.xlabel('split number')
_ = plt.ylabel('split time (s)')
plt.show()

# Print the slowdown per split
print("""
mean slowdown: {0:.3f} sec./split
95% conf int of mean slowdown: [{1:.3f}, {2:.3f}] sec./split""".format(
    slowdown, *conf_int))
Modifier et exécuter le code