ПочатиПочніть безкоштовно

Як часто трапляються no-hitter'и?

Кількість ігор між кожним no-hitter у сучасну добу (1901–2015) Головної ліги бейсболу збережено в масиві nohitter_times.

Якщо вважати, що no-hitter'и описує пуассонівський процес, то час між ними має експоненційний розподіл. Як ви вже бачили, експоненційний розподіл має один параметр, який ми позначимо як \(\tau\) — типовий інтервал часу. Значення параметра \(\tau\), за якого експоненційний розподіл найкраще узгоджується з даними, — це середній інтервал часу (у кількості ігор) між no-hitter'ами.

Обчисліть значення цього параметра з даних. Далі скористайтеся np.random.exponential(), щоб «повторити» історію Головної ліги бейсболу, вибираючи інтервали між no-hitter'ами з експоненційного розподілу із знайденим \(\tau\), і побудуйте гістограму як наближення до PDF.

Бібліотеки NumPy, pandas, matplotlib.pyplot та seaborn вже імпортовано для вас як np, pd, plt і sns відповідно.

Ця вправа є частиною курсу

Статистичне мислення в Python (Частина 2)

Переглянути курс

Інструкції до вправи

  • Ініціалізуйте генератор випадкових чисел значенням 42.
  • Обчисліть середній час (у кількості ігор) між no-hitter'ами.
  • Зробіть 100 000 вибірок з експоненційного розподілу з параметром, який ви обчислили як середнє інтервалів між no-hitter'ами.
  • Побудуйте теоретичний PDF за допомогою plt.hist(). Не забудьте використати ключові аргументи bins=50, normed=True та histtype='step'. Обов'язково підпишіть осі.
  • Показуйте свій графік.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

# 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()
Редагувати та запускати код