LoslegenKostenlos loslegen

Permutation üben

Sind NBA-Spieler schwerer als erwachsene US-Männer? Du möchtest nun das 95-%-Konfidenzintervall der mittleren Differenz (in Kilogramm) zwischen NBA-Spielern und erwachsenen US-Männern berechnen. Dafür nutzt du die beiden gegebenen Listen.

Permutation ist ideal, um Unterschiede zu testen – daher verwendest du hier diese Resampling-Methode!

nba_weights = [96.7, 101.1, 97.9, 98.1, 98.1, 100.3, 101.0, 98.0, 97.4, 100.5, 100.3, 100.2, 100.6]
us_adult_weights = [75.1, 100.1, 95.2, 81.0, 72.0, 63.5, 80.0, 97.1, 94.3, 80.3, 93.5, 85.8, 95.1]

Beachte, dass jede der obigen Listen 13 Gewichte enthält.

Folgendes wurde bereits für dich importiert: random, numpy als np, seaborn als sns und matplotlib.pyplot als plt.

Diese Übung ist Teil des Kurses

Monte-Carlo-Simulationen in Python

Kurs anzeigen

Anleitung zur Übung

  • Definiere all_weights als Liste, die die Werte aus nba_weights und us_adult_weights enthält.
  • Führe die Permutation auf all_weights mit np.random.permutation() aus.
  • Weise die ersten 13 permutierten Stichproben perm_nba zu und die übrigen 13 perm_adult.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

# Define all_weights
all_weights = ____
simu_diff = []

for i in range(1000):
	# Perform the permutation on all_weights
    perm_sample = ____
    # Assign the permutated samples to perm_nba and perm_adult
    perm_nba, perm_adult = ____, ____
    perm_diff = np.mean(perm_nba) - np.mean(perm_adult)
    simu_diff.append(perm_diff)
mean_diff = np.mean(nba_weights) - np.mean(us_adult_weights) 
upper = np.quantile(simu_diff, 0.975)
lower = np.quantile(simu_diff, 0.025)
print(mean_diff, lower, upper)
Code bearbeiten und ausführen