CommencezCommencez gratuitement

Analyser des données asymétriques avec un test de permutation

Les tests de permutation sont utiles lorsque les conditions des tests d'hypothèses que vous connaissez déjà ne sont pas respectées. Dans cet exercice, vous allez coder un test de permutation avec le paquet statsmodels.

Vous souhaitez comparer le nombre moyen de rondes de financement entre les entreprises du domaine de l'analytique et toutes les autres entreprises financées par du capital de risque. Même si vous pourriez être tenté d'utiliser un test t, vous savez que le nombre de rondes de financement n'est pas distribué normalement. La majorité des entreprises n'ont qu'une seule ronde, et le nombre d'entreprises ayant deux rondes ou plus chute rapidement.

Les éléments suivants ont été chargés pour vous :

  • analytics_df - Données sur toutes les entreprises d'analytique
  • non_analytics_df - Données sur toutes les autres entreprises non analytiques

Cette activité fait partie du cours

Fondements de l'inférence en Python

Voir le cours

Instructions de l’exercice

  • Définissez une fonction de statistique qui, étant donnés deux échantillons fundings_group_1 et fundings_group_2, retourne la différence entre les moyennes du nombre de funding_rounds.
  • Effectuez un test de permutation en utilisant la colonne funding_rounds de chaque ensemble de données, la fonction de statistique que vous avez définie et 100 rééchantillonnages.
  • Affichez la valeur p résultante de votre test de permutation.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# Write a "statistic" function which calculates the difference in means
def statistic(funding_group_1, funding_group_2):
  return ____(fundings_group_1) - ____(funding_group_2)

# Conduct a permutation test using 100 resamples
perm_result = stats.permutation_test((____['funding_rounds'], ____['funding_rounds']),
                                    statistic=____,
                                    n_resamples=____,
                                    vectorized=____)

# Print the p-value
____(____.pvalue)
Modifier et exécuter le code