CommencerCommencer 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èse que vous connaissez ne sont pas réunies. Dans cet exercice, vous allez coder un test de permutation avec le package statsmodels.

Vous souhaitez comparer le nombre moyen de tours de financement entre les entreprises du domaine de l’analytics et toutes les autres entreprises financées par du capital-risque. Même si vous pourriez être tenté d’utiliser un t-test, vous savez que le nombre de tours de financement n’est pas distribué normalement. La plupart des entreprises n’ont qu’un seul tour, et le nombre d’entreprises ayant deux tours ou plus diminue rapidement.

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

  • analytics_df - Données sur toutes les entreprises d’analytics
  • non_analytics_df - Données sur toutes les autres entreprises (hors analytics)

Cet exercice fait partie du cours

Fondements de l’inférence en Python

Afficher le cours

Instructions

  • Définissez une fonction statistique qui, étant donnés deux échantillons fundings_group_1 et fundings_group_2, renvoie la différence de moyenne du nombre de funding_rounds.
  • Réalisez un test de permutation en utilisant la colonne funding_rounds de chaque jeu de données, la fonction statistique que vous avez définie, et 100 rééchantillonnages.
  • Affichez la p-valeur résultante de votre test de permutation.

Exercice interactif pratique

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

# 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