CommencezCommencez gratuitement

À quelle fréquence obtient-on des matchs sans point ni coup sûr?

Le nombre de matchs disputés entre chaque match sans point ni coup sûr à l'ère moderne (1901-2015) de la Ligue majeure de baseball est stocké dans le tableau nohitter_times.

Si vous supposez que les matchs sans point ni coup sûr suivent un processus de Poisson, alors le temps entre deux événements est distribué selon une loi exponentielle. Comme vous l'avez vu, la loi exponentielle a un seul paramètre, que nous appellerons \(\tau\), l'intervalle typique. La valeur du paramètre \(\tau\) qui permet à la loi exponentielle de mieux correspondre aux données est le temps d'intervalle moyen (où le temps est en nombre de matchs) entre ces événements.

Calculez la valeur de ce paramètre à partir des données. Ensuite, utilisez np.random.exponential() pour « rejouer » l'historique de la Ligue majeure de baseball en tirant des temps entre événements à partir d'une loi exponentielle avec le \(\tau\) que vous avez trouvé, puis tracez l'histogramme comme approximation de la PDF.

NumPy, pandas, matplotlib.pyplot et seaborn ont été importés pour vous sous les noms np, pd, plt et sns, respectivement.

Cette activité fait partie du cours

Réflexion statistique en Python (partie 2)

Voir le cours

Instructions de l’exercice

  • Initialisez le générateur de nombres aléatoires avec 42.
  • Calculez le temps moyen (en nombre de matchs) entre les matchs sans point ni coup sûr.
  • Tirez 100 000 échantillons d'une loi exponentielle avec le paramètre que vous avez calculé à partir de la moyenne des temps entre événements.
  • Tracez la PDF théorique avec plt.hist(). N'oubliez pas d'utiliser les arguments nommés bins=50, normed=True et histtype='step'. Assurez-vous d'indiquer des étiquettes pour vos axes.
  • Affichez votre graphique.

Exercice interactif pratique

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

# Seed random number generator
____

# Compute mean no-hitter time: tau
tau = ____

# Draw out of an exponential distribution with parameter tau: inter_nohitter_time
inter_nohitter_time = ____(____, 100000)

# Plot the PDF and label axes
_ = ____(inter_nohitter_time,
             ____, ____, ____)
_ = plt.xlabel('Games between no-hitters')
_ = plt.ylabel('PDF')

# Show the plot
plt.show()
Modifier et exécuter le code