Hiç sayı yemeden (no-hitter) ne sıklıkla oluyor?
Major League Baseball'un modern döneminde (1901-2015) her bir no-hitter arasında oynanan maç sayıları nohitter_times dizisinde saklıdır.
Eğer no-hitter'ların bir Poisson süreciyle açıklandığını varsayarsan, no-hitter'lar arasındaki süreler Üstel (Exponential) dağılıma uyar. Gördüğün gibi, Üstel dağılımın tek bir parametresi vardır; buna tipik aralık süresi anlamına gelen \(\tau\) diyeceğiz. Veriye en iyi uyan üstel dağılımın \(\tau\) parametresi, no-hitter'lar arasındaki ortalama aralık süresidir (zaman birimi maç sayısıdır).
Bu parametrenin değerini veriden hesapla. Sonra, np.random.exponential() kullanarak bulduğun \(\tau\) ile üstel dağılımdan no-hitter aralık süreleri çekip Major League Baseball tarihini "tekrarla" ve histogramını çizerek PDF'e bir yaklaşım elde et.
NumPy, pandas, matplotlib.pyplot ve seaborn sırasıyla np, pd, plt ve sns olarak içe aktarılmıştır.
Bu egzersiz, kursun bir parçasıdır
Python ile İstatistiksel Düşünme (Bölüm 2)
Egzersiz talimatları
- Rastgele sayı üretecini
42ile tohumla. - No-hitter'lar arasındaki ortalama süreyi (maç sayısı biriminde) hesapla.
- No-hitter aralık sürelerinin ortalamasından hesapladığın parametreyle Üstel dağılımdan 100.000 örnek çek.
- Teorik PDF'i
plt.hist()ile çiz.bins=50,normed=Truevehisttype='step'anahtar argümanlarını kullanmayı unutma. Eksenlerini mutlaka etiketle. - Grafiğini göster.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
# 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()