Analysera skevfördelade data med ett permutationstest
Permutationstester är användbara i situationer som inte uppfyller villkoren för de hypotestester du redan känner till. I den här övningen ska du koda ett permutationstest med paketet statsmodels.
Du vill jämföra det genomsnittliga antalet finansieringsrundor mellan bolag inom analysområdet och alla andra riskkapitalfinansierade bolag. Även om ett t-test kan verka lockande kan du vara säker på att antalet finansieringsrundor inte är normalfördelat. De flesta bolag har bara en runda, och antalet bolag med två eller fler rundor minskar snabbt.
Följande har laddats in åt dig:
analytics_df– Data om alla analysbolagnon_analytics_df– Data om alla andra bolag utanför analysområdet
Den här övningen är en del av kursen
Grunderna i inferens med Python
Övningsinstruktioner
- Definiera en statistikfunktion som, givet två urval
fundings_group_1ochfundings_group_2, returnerar skillnaden i medelantalfunding_rounds. - Genomför ett permutationstest med kolumnen
funding_roundsfrån varje datamängd, den statistikfunktion du definierat och 100 omsamplingar. - Skriv ut det resulterande p-värdet från ditt permutationstest.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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)