Générer un échantillon par permutation
Dans la vidéo, vous avez vu que l'échantillonnage par permutation est une excellente façon de simuler l'hypothèse selon laquelle deux variables ont des distributions de probabilité identiques. C'est souvent une hypothèse que vous voudrez mettre à l'épreuve. Dans cet exercice, vous allez donc écrire une fonction pour générer un échantillon par permutation à partir de deux ensembles de données.
Rappelons qu'un échantillon par permutation de deux tableaux ayant respectivement n1 et n2 éléments est construit en concaténant les tableaux, en brouillant le contenu du tableau concaténé, puis en prenant les n1 premiers éléments comme échantillon par permutation du premier tableau et les n2 derniers éléments comme échantillon par permutation du second tableau.
Cette activité fait partie du cours
Réflexion statistique en Python (partie 2)
Instructions de l’exercice
- Concaténez les deux tableaux d'entrée en un seul à l'aide de
np.concatenate(). Assurez-vous de passerdata1etdata2comme un seul argument(data1, data2). - Utilisez
np.random.permutation()pour permuter le tableau concaténé. - Enregistrez les
len(data1)premiers éléments depermuted_datasousperm_sample_1et leslen(data2)derniers éléments depermuted_datasousperm_sample_2. En pratique, vous pouvez y arriver en utilisant:len(data1)etlen(data1):pour découperpermuted_data. - Retournez
perm_sample_1etperm_sample_2.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
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