Бутстреп-реплікати середнього та SEM
У цій вправі ви обчислите бутстреп-оцінку функції щільності ймовірності для середнього річного рівня опадів на метеостанції Шеффілда. Згадайте: ми оцінюємо середній річний рівень опадів, який отримали б, якби метеостанція Шеффілда могла знову й знову повторювати всі вимірювання з 1883 по 2015 рік. Це ймовірнісна оцінка середнього. Ви побудуєте PDF як гістограму й побачите, що вона має нормальний вигляд.
Теоретично можна показати, що за не надто жорстких умов значення середнього завжди розподілене нормально. (Це не загальне правило для всіх статистик, а саме для середнього та ще кількох показників.) Стандартне відхилення цього розподілу, яке називають стандартною похибкою середнього або SEM, дорівнює стандартному відхиленню даних, поділеному на квадратний корінь з кількості точок даних. Тобто для набору даних: sem = np.std(data) / np.sqrt(len(data)). Використовуючи хакерську статистику, ви отримаєте той самий результат без виведення формули, а потім перевірите його на своїх бутстреп-реплікатах.
Набір даних уже завантажено для вас у масив rainfall.
Ця вправа є частиною курсу
Статистичне мислення в Python (Частина 2)
Інструкції до вправи
- Згенеруйте
10000бутстреп-реплікатів середнього річного рівня опадів за допомогою вашої функціїdraw_bs_reps()і масивуrainfall. Підказка: передайтеnp.meanу параметрfunc, щоб обчислювати середнє.- Нагадаємо,
draw_bs_reps()приймає 3 аргументи:data,funcіsize.
- Нагадаємо,
- Обчисліть і виведіть стандартну похибку середнього для
rainfall.- Формула:
np.std(data) / np.sqrt(len(data)).
- Формула:
- Обчисліть і виведіть стандартне відхилення ваших бутстреп-реплікатів
bs_replicates. - Побудуйте гістограму реплікатів із параметром
density=Trueі50бінів. - Натисніть «Надіслати відповідь», щоб побачити графік!
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# Take 10,000 bootstrap replicates of the mean: bs_replicates
bs_replicates = ____
# Compute and print SEM
sem = ____ / np.sqrt(____)
print(sem)
# Compute and print standard deviation of bootstrap replicates
bs_std = ____
print(bs_std)
# Make a histogram of the results
_ = plt.hist(____, ____=50, ____=True)
_ = plt.xlabel('mean annual rainfall (mm)')
_ = plt.ylabel('PDF')
# Show the plot
plt.show()