Fitness hedefleri
Modern fitness takipçilerini kullanarak aktivite düzeylerinin kilo kaybını nasıl etkilediğini modelleyelim. Spor salonuna gittiğin günlerde ortalama 15 bin adım, diğer günlerde ise yaklaşık 5 bin adım atıyorsun. Spor salonuna gitme olasılığın %40. Bir gündeki adım sayısını, spor salonuna gidip gitmediğine bağlı olarak ortalaması \(\lambda\) olan Poisson rassal değişkeniyle modelleyelim.
Basitlik için, 10 bin adımdan fazla attığında %80 olasılıkla 1 lb kaybettiğini, %20 olasılıkla 1 lb aldığını söyleyelim. 8 bin adımdan az attığında bu olasılıklar tersine dönsün. Aksi durumda 1 lb alma veya verme olasılıkları eşit olsun. Tüm bu bilgilere göre, bir ay içinde kilo verme olasılığını bul.
Bu egzersiz
Python'da İstatistiksel Benzetim
kursunun bir parçasıdırEgzersiz talimatları
lamdeğerine bağlı olarak bir gün içinstepsdeğişkenini Poisson rassal değişkeni olarak simüle et.steps > 10000iseprobdeğerini[0.2, 0.8],steps < 8000ise[0.8, 0.2]olarak ayarla. Ay içindewiçinde tutulan tüm kilo alımını veya kaybını topla.outcomesiçindeki bir ayın toplam kilosunun 0'dan küçük olduğu simülasyonların oranını hesapla ve yazdır. Bunuweight_loss_outcomes_fracolarak kaydet ve sonuçlarını yazdırmak için kullan.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
# Simulate steps & choose prob
for _ in range(sims):
w = []
for i in range(days):
lam = np.random.choice([5000, 15000], p=[0.6, 0.4], size=1)
____ = np.random.poisson(____)
if steps > 10000:
prob = ____
elif steps < 8000:
prob = ____
else:
prob = [0.5, 0.5]
w.append(np.random.choice([1, -1], p=prob))
outcomes.append(sum(w))
# Calculate fraction of outcomes where there was a weight loss
weight_loss_outcomes_frac = ____
print("Probability of Weight Loss = {}".format(____))