Zmienność statystyk próby
Jeśli utworzymy jedną próbkę o size=1000, losując tyle punktów z populacji, a następnie obliczymy statystykę próby – na przykład średnią – otrzymamy pojedynczą wartość podsumowującą tę próbkę.
Jeśli powtórzymy ten proces próbkowania num_samples=100 razy, otrzymamy 100 próbek. Obliczenie statystyki próby, takiej jak średnia, dla każdej z tych próbek da nam rozkład wartości średniej. Celem jest zatem obliczenie średniej ze średnich oraz odchylenia standardowego średnich.
W tym ćwiczeniu skorzystasz z wczytanych wcześniej zmiennych population, num_samples i num_pts. Zwróć uwagę, że tablice means i deviations zostały zainicjalizowane zerami – to kontenery przygotowane do użycia w pętli.
To ćwiczenie jest częścią kursu
Wprowadzenie do modelowania liniowego w Pythonie
Instrukcje do ćwiczenia
- Dla każdej z
num_samples=100iteracji wygeneruj próbkę, a następnie oblicz i zapisz statystyki próby. - W każdej iteracji utwórz zmienną
sample, używającnp.random.choice()do wylosowania1000punktów z populacji. - W każdej iteracji oblicz i zapisz wyniki metod
sample.mean()isample.std(), aby wyznaczyć średnią i odchylenie standardowe próbki. - Dla tablicy
meansi tablicydeviationsoblicz zarówno średnią, jak i odchylenie standardowe każdej z nich, a następnie wyświetl wyniki.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Initialize two arrays of zeros to be used as containers
means = np.zeros(num_samples)
stdevs = np.zeros(num_samples)
# For each iteration, compute and store the sample mean and sample stdev
for ns in range(num_samples):
sample = np.____.choice(population, num_pts)
means[ns] = sample.____()
stdevs[ns] = sample.____()
# Compute and print the mean() and std() for the sample statistic distributions
print("Means: center={:>6.2f}, spread={:>6.2f}".format(means.mean(), means.std()))
print("Stdevs: center={:>6.2f}, spread={:>6.2f}".format(stdevs.____(), stdevs.____()))