Generar una muestra por permutación
En el vídeo, aprendiste que el muestreo por permutación es una gran forma de simular la hipótesis de que dos variables tienen distribuciones de probabilidad idénticas. Esta es a menudo una hipótesis que querrás contrastar, así que en este ejercicio vas a escribir una función para generar una muestra por permutación a partir de dos conjuntos de datos.
Recuerda: una muestra por permutación de dos arrays con n1 y n2 elementos, respectivamente, se construye concatenando ambos arrays, barajando el contenido del array concatenado y, después, tomando las primeras n1 posiciones como la muestra por permutación del primer array y las últimas n2 posiciones como la muestra por permutación del segundo array.
Este ejercicio forma parte del curso
Pensamiento estadístico en Python (Parte 2)
Instrucciones del ejercicio
- Concatena los dos arrays de entrada en uno usando
np.concatenate(). Asegúrate de pasardata1ydata2como un único argumento(data1, data2). - Usa
np.random.permutation()para permutar el array concatenado. - Guarda las primeras
len(data1)posiciones depermuted_datacomoperm_sample_1y las últimaslen(data2)posiciones depermuted_datacomoperm_sample_2. En la práctica, puedes lograrlo usando:len(data1)ylen(data1):para trocearpermuted_data. - Devuelve
perm_sample_1yperm_sample_2.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
def permutation_sample(data1, data2):
"""Generate a permutation sample from two data sets."""
# Concatenate the data sets: data
data = ____
# Permute the concatenated array: permuted_data
permuted_data = ____
# Split the permuted array into two: perm_sample_1, perm_sample_2
perm_sample_1 = permuted_data[____]
perm_sample_2 = permuted_data[____]
return perm_sample_1, perm_sample_2