ComenzarEmpieza gratis

Visualizar muestras bootstrap

En este ejercicio vas a generar muestras bootstrap a partir del conjunto de datos de precipitación anual medidos en la estación meteorológica de Sheffield (Reino Unido) entre 1883 y 2015. Los datos están almacenados en el array de NumPy rainfall en milímetros (mm). Al mostrar gráficamente las muestras bootstrap con una ECDF, podrás intuir cómo el muestreo bootstrap permite descripciones probabilísticas de los datos.

Este ejercicio forma parte del curso

Pensamiento estadístico en Python (Parte 2)

Ver curso

Instrucciones del ejercicio

  • Escribe un bucle for para obtener 50 muestras bootstrap de los datos de precipitación y representa su ECDF.
    • Usa np.random.choice() para generar una muestra bootstrap a partir del array de NumPy rainfall. Asegúrate de que el size del array remuestreado sea len(rainfall).
    • Usa la función ecdf() que escribiste en la primera parte de este curso para generar los valores x y y de la ECDF de la muestra bootstrap bs_sample.
    • Representa los valores de la ECDF. Especifica color='gray' (para obtener puntos grises) y alpha=0.1 (para que sean semitransparentes, ya que superpondremos muchas), además de los argumentos marker='.' y linestyle='none'.
  • Usa ecdf() para generar los valores x y y de la ECDF de los datos originales de precipitación disponibles en el array rainfall.
  • Representa los valores de la ECDF de los datos originales.
  • Pulsa Submit para visualizar las muestras.

Ejercicio interactivo práctico

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

for _ in range(50):
    # Generate bootstrap sample: bs_sample
    bs_sample = ____(____, size=____)

    # Compute and plot ECDF from bootstrap sample
    x, y = ____
    _ = plt.plot(____, ____, ____='.', ____='none',
                 ____='gray', ____=0.1)

# Compute and plot ECDF from original data
x, y = ____
_ = plt.plot(____, ____, ____='.')

# Make margins and label axes
plt.margins(0.02)
_ = plt.xlabel('yearly rainfall (mm)')
_ = plt.ylabel('ECDF')

# Show the plot
plt.show()
Editar y ejecutar código