Objectifs forme physique
Modélisons l’impact du niveau d’activité sur la perte de poids à l’aide de traqueurs d’activité modernes. Les jours où vous allez à la salle de sport, vous faites en moyenne 15 000 pas, et environ 5 000 pas sinon. Vous allez à la salle 40 % du temps. Modélisons le nombre de pas quotidien comme une variable aléatoire de Poisson, de moyenne \(\lambda\) dépendant du fait que vous alliez à la salle ou non.
Pour simplifier, disons que vous avez 80 % de chances de perdre 1 lb et 20 % de chances de gagner 1 lb lorsque vous dépassez 10 000 pas. Les probabilités sont inversées lorsque vous faites moins de 8 000 pas. Sinon, vous avez une chance sur deux de perdre ou de gagner 1 lb. Avec toutes ces informations, trouvez la probabilité de perdre du poids sur un mois.
Cet exercice fait partie du cours
Simulation statistique en Python
Instructions
- Simulez
stepscomme une variable aléatoire de Poisson pour un jour donné en fonction de la valeur delam. - Affectez
probà[0.2, 0.8]sisteps > 10000ou à[0.8, 0.2]sisteps < 8000. Faites la somme de tout le poids perdu ou gagné sur un mois, stocké dansw. - Calculez et affichez la fraction des simulations où le poids total sur un mois dans
outcomesest inférieur à 0. Enregistrez-la sousweight_loss_outcomes_fracet utilisez-la pour afficher vos résultats.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# 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(____))