Correlación entre datos de progenie y parentales
Para cuantificar la correlación entre las profundidades del pico de la descendencia y de los padres, queremos calcular estadísticas como el coeficiente de correlación de Pearson entre padres y crías. Para obtener intervalos de confianza, necesitamos hacer un pairs bootstrap.
Ya has escrito una función para hacer pairs bootstrap y obtener estimaciones de parámetros derivados de una regresión lineal. Tu tarea en este ejercicio es crear una nueva función con firma de llamada draw_bs_pairs(x, y, func, size=1) que realice pairs bootstrap y calcule una única estadística sobre las muestras emparejadas definidas. La estadística de interés se calcula llamando a func(bs_x, bs_y). En el siguiente ejercicio, usarás pearson_r como func.
Este ejercicio forma parte del curso
Pensamiento estadístico en Python (Parte 2)
Instrucciones del ejercicio
- Prepara un array de índices del que muestrear. (Recuerda que, en pairs bootstrap, elegimos índices aleatoriamente y los usamos para obtener los pares.)
- Inicializa el array de réplicas bootstrap. Debe ser un array unidimensional de longitud
size. - Escribe un bucle
forpara extraer las muestras. - Elige índices aleatorios del array de índices que preparaste antes.
- Extrae los valores de
xy los deydel array de entrada usando los índices que acabas de elegir para generar una muestra bootstrap. - Usa
funcpara calcular la estadística de interés a partir de las muestras bootstrap dexeyy guárdala en tu array de réplicas bootstrap. - Devuelve el array de réplicas bootstrap.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
def draw_bs_pairs(x, y, func, size=1):
"""Perform pairs bootstrap for a single statistic."""
# Set up array of indices to sample from: inds
inds = ____
# Initialize replicates: bs_replicates
bs_replicates = ____
# Generate replicates
for i in range(size):
bs_inds = ____
bs_x, bs_y = ____
bs_replicates[i] = ____
return bs_replicates