Kom igångKom igång gratis

Öva på permutation

Är NBA-spelare tyngre än vuxna män i USA? Du ska nu beräkna 95-procentigt konfidensintervall för medelvärdesskillnaden (i kilogram) mellan NBA-spelare och vuxna amerikanska män. Du använder de två listor som finns tillgängliga.

Permutation lämpar sig väl för att testa skillnader, och det är därför den återsamplingsmetod du använder här!

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]

Observera att var och en av listorna ovan innehåller 13 vikter.

Följande har redan importerats: random, numpy as np, seaborn as sns och matplotlib.pyplot as plt.

Den här övningen är en del av kursen

Monte Carlo-simuleringar i Python

Visa kurs

Övningsinstruktioner

  • Definiera all_weights som en lista med värdena från både nba_weights och us_adult_weights.
  • Utför permutationen på all_weights med hjälp av np.random.permutation().
  • Tilldela de första 13 permuterade samplen till perm_nba och de resterande 13 till perm_adult.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# 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)
Redigera och kör kod