НачатьНачать бесплатно

Бутстрап-реплики среднего и стандартная ошибка среднего

В этом упражнении вы построите бутстрап-оценку функции плотности вероятности среднего годового количества осадков на метеостанции Шеффилда. Напомним: мы оцениваем среднее годовое количество осадков, которое наблюдалось бы, если бы метеостанция Шеффилда могла бесконечное число раз повторить все измерения с 1883 по 2015 год. Это вероятностная оценка среднего. Вы изобразите функцию плотности в виде гистограммы и убедитесь, что она соответствует нормальному распределению.

Теоретически можно показать, что при достаточно общих условиях значение среднего всегда распределено нормально. (Это справедливо не для любой статистики — только для среднего и нескольких других.) Стандартное отклонение такого распределения называется стандартной ошибкой среднего (SEM) и вычисляется как стандартное отклонение данных, делённое на квадратный корень из числа точек: sem = np.std(data) / np.sqrt(len(data)). С помощью хакерской статистики вы получите тот же результат без необходимости его выводить, а затем проверите его на своих бутстрап-репликах.

Набор данных уже загружен в массив rainfall.

Это упражнение является частью курса

Статистическое мышление на Python (часть 2)

Посмотреть курс

Инструкции к упражнению

  • С помощью функции draw_bs_reps() и массива rainfall сгенерируйте 10000 бутстрап-реплик среднего годового количества осадков. Подсказка: передайте 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()
Редактировать и запускать код