K-S-Replikate ziehen
Jetzt brauchst du eine Funktion, um Kolmogorov-Smirnov-Replikate aus einer Zielverteilung f zu ziehen. Implementiere dazu eine Funktion mit der Signatur draw_ks_reps(n, f, args=(), size=10000, n_reps=10000). Dabei ist n die Anzahl der Datenpunkte und f die Funktion, mit der du Stichproben aus der Ziel-CDF erzeugst. Um beispielsweise gegen eine Exponentialverteilung zu testen, würdest du np.random.exponential als f übergeben. Diese Funktion nimmt in der Regel Parameter entgegen, die als Tupel übergeben werden müssen. Wenn du also Stichproben aus einer Exponentialverteilung mit dem Mittelwert x_mean ziehen möchtest, verwendest du das Schlüsselwort args=(x_mean,). Die Schlüsselwortargumente size und n_reps stehen jeweils für die Anzahl der Stichproben aus der Zielverteilung und die Anzahl der zu ziehenden Replikate.
Diese Übung ist Teil des Kurses
Fallstudien zum statistischen Denken
Anleitung zur Übung
- Schreibe eine Funktion mit der Signatur
draw_ks_reps(n, f, args=(), size=10000, n_reps=10000), die Folgendes tut.- Erzeuge
sizeStichproben aus der Zielverteilungf. Denk daran: Umargsan die Stichprobenfunktion zu übergeben, solltest du die Schreibweisef(*args, size=size)verwenden. Speichere das Ergebnis alsx_f. - Initialisiere das Replikate-Array
repsals leeres Array mitn_repsEinträgen. - Schreibe eine
for-Schleife, die Folgendesn_reps-mal ausführt.- Ziehe
nStichproben ausf. Verwende auch hier*argsim Funktionsaufruf. Speichere das Ergebnis in der Variablenx_samp. - Berechne die K-S-Statistik mit
dcst.ks_stat(), also der Funktion, die du in der vorherigen Übung geschrieben hast und die praktisch im Moduldcstgespeichert ist. Speichere das Ergebnis im Arrayreps.
- Ziehe
- Gib das Array
repszurück.
- Erzeuge
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
____ ____:
# Generate samples from target distribution
x_f = ____
# Initialize K-S replicates
reps = ____
# Draw replicates
for i in range(n_reps):
# Draw samples for comparison
x_samp = ____
# Compute K-S statistic
____[i] = ____
return reps