LoslegenKostenlos starten

Fitnessziele

Lass uns modellieren, wie sich Aktivitätslevel mithilfe moderner Fitness-Tracker auf den Gewichtsverlust auswirken. An Tagen, an denen du ins Fitnessstudio gehst, machst du im Schnitt etwa 15.000 Schritte, sonst etwa 5.000 Schritte. Du gehst in 40 % der Fälle ins Gym. Wir modellieren die Schrittzahl pro Tag als Poisson-Zufallsvariable mit einem Mittelwert \(\lambda\), der davon abhängt, ob du ins Gym gehst oder nicht.

Der Einfachheit halber nehmen wir an: Wenn du mehr als 10.000 Schritte machst, hast du zu 80 % die Chance, 1 lb abzunehmen, und zu 20 % die Chance, 1 lb zuzunehmen. Bei weniger als 8.000 Schritten sind die Wahrscheinlichkeiten umgekehrt. Andernfalls ist die Wahrscheinlichkeit, 1 lb zuzunehmen oder abzunehmen, gleich. Bestimme mit all diesen Informationen die Wahrscheinlichkeit, im Laufe eines Monats Gewicht zu verlieren.

Diese Übung ist Teil des Kurses

<Kurs>Statistische Simulation in Python</Kurs>
Kurs ansehen

Übungsanweisungen

  • Simuliere steps als Poisson-Zufallsvariable für einen gegebenen Tag basierend auf dem Wert von lam.
  • Setze prob auf [0.2, 0.8], wenn steps > 10000, oder auf [0.8, 0.2], wenn steps < 8000. Summiere den gesamten Gewichtsverlust bzw. -zuwachs eines Monats, gespeichert in w.
  • Berechne und gib den Anteil der Simulationen aus, in denen das Gesamtgewicht für einen Monat in outcomes kleiner als 0 ist. Speichere ihn als weight_loss_outcomes_frac und nutze ihn, um deine Ergebnisse auszugeben.

Interaktive praktische Übung

Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.

# 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(____))
Code bearbeiten und ausführen