CommencerCommencer gratuitement

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 une hypothèse que vous souhaitez souvent tester ; dans cet exercice, vous allez donc écrire une fonction pour générer un échantillon par permutation à partir de deux jeux de données.

Rappel : un échantillon par permutation de deux tableaux ayant respectivement n1 et n2 éléments se construit en concaténant les tableaux, en mélangeant 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.

Cet exercice fait partie du cours

Réflexion statistique en Python (Partie 2)

Afficher le cours

Instructions

  • Concaténez les deux tableaux d’entrée en un seul à l’aide de np.concatenate(). Veillez à passer data1 et data2 en un seul argument (data1, data2).
  • Utilisez np.random.permutation() pour permuter le tableau concaténé.
  • Stockez les len(data1) premiers éléments de permuted_data dans perm_sample_1 et les len(data2) derniers éléments de permuted_data dans perm_sample_2. En pratique, cela peut se faire en utilisant :len(data1) et len(data1): pour couper permuted_data.
  • Retournez perm_sample_1 et perm_sample_2.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

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
Modifier et exécuter le code