LoslegenKostenlos starten

Schiefe Daten mit einem Permutationstest analysieren

Permutationstests sind hilfreich, wenn die Voraussetzungen der dir bekannten Hypothesentests nicht erfüllt sind. In dieser Übung programmierst du einen Permutationstest mit dem Paket statsmodels.

Du möchtest die durchschnittliche Anzahl an Finanzierungsrunden zwischen Unternehmen im Analytics-Bereich und allen anderen, durch Wagniskapital finanzierten Unternehmen vergleichen. Auch wenn ein t-Test naheliegt, weißt du, dass die Anzahl der Finanzierungsrunden nicht normalverteilt ist. Stattdessen haben die meisten Unternehmen nur eine Runde, und die Zahl der Unternehmen mit zwei oder mehr Runden nimmt schnell ab.

Folgendes wurde für dich geladen:

  • analytics_df – Daten zu allen Analytics-Unternehmen
  • non_analytics_df – Daten zu allen anderen Nicht-Analytics-Unternehmen

Diese Übung ist Teil des Kurses

<Kurs>Grundlagen der Inferenz in Python</Kurs>
Kurs ansehen

Übungsanweisungen

  • Definiere eine Statistikfunktion, die für zwei Stichproben fundings_group_1 und fundings_group_2 die Differenz der mittleren Anzahl an funding_rounds zurückgibt.
  • Führe einen Permutationstest mit der Spalte funding_rounds aus jedem Datensatz, der von dir definierten Statistikfunktion und 100 Resamples durch.
  • Gib den daraus resultierenden p-Wert deines Permutationstests aus.

Interaktive praktische Übung

Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.

# 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)
Code bearbeiten und ausführen