ComenzarEmpieza gratis

Objetivos de fitness

Vamos a modelar cómo los niveles de actividad influyen en la pérdida de peso usando pulseras de actividad modernas. Los días que vas al gimnasio, haces de media unas 15k pasos, y unos 5k pasos el resto de días. Vas al gimnasio el 40% del tiempo. Modelemos el número de pasos en un día como una variable aleatoria de Poisson con una media \(\lambda\) que depende de si vas o no al gimnasio.

Para simplificar, supongamos que tienes un 80% de probabilidad de perder 1 lb y un 20% de probabilidad de ganar 1 lb cuando haces más de 10k pasos. Las probabilidades se invierten cuando haces menos de 8k pasos. En caso contrario, hay la misma probabilidad de ganar o perder 1 lb. Con toda esta información, halla la probabilidad de perder peso en un mes.

Este ejercicio forma parte del curso

Simulación estadística en Python

Ver curso

Instrucciones del ejercicio

  • Simula steps como una variable aleatoria de Poisson para un día dado en función del valor de lam.
  • Establece prob como [0.2, 0.8] si steps > 10000 o como [0.8, 0.2] si steps < 8000. Suma todo el peso perdido o ganado en un mes almacenado en w.
  • Calcula e imprime la fracción de simulaciones en las que el peso total de un mes en outcomes es menor que 0. Guarda el resultado como weight_loss_outcomes_frac y úsalo para imprimir tus resultados.

Ejercicio interactivo práctico

Prueba este ejercicio y completa el código de muestra.

# 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(____))
Editar y ejecutar código