Визуализация бутстреп-регрессий
Хороший способ наглядно оценить разброс, ожидаемый при линейной регрессии, — построить прямые, соответствующие каждой бутстреп-реплике наклона и свободного члена. Сделайте это для первых 100 бутстреп-реплик наклона и свободного члена (хранящихся в bs_slope_reps и bs_intercept_reps).
Это упражнение является частью курса
Статистическое мышление на Python (часть 2)
Инструкции к упражнению
- Создайте массив \(x\)-значений, состоящий из
0и100, для построения линий регрессии. Используйте для этого функциюnp.array(). - Напишите цикл
for, в котором вы будете строить линию регрессии с наклоном и свободным членом, заданными парными бутстреп-репликами. Постройте таким образом100линий.- При построении линий регрессии на каждой итерации цикла
forиспользуйте уравнение регрессииy = a*x + b. Здесьa— этоbs_slope_reps[i], аb—bs_intercept_reps[i]. - Укажите именованные аргументы
linewidth=0.5,alpha=0.2иcolor='red'в вызовеplt.plot().
- При построении линий регрессии на каждой итерации цикла
- Постройте точечный график: по оси x —
illiteracy, по оси y —fertility. Не забудьте указать именованные аргументыmarker='.'иlinestyle='none'. - Подпишите оси, задайте отступ в 2% и отобразите график. Этот шаг уже выполнен за вас — нажмите «Отправить ответ», чтобы увидеть бутстреп-регрессии!
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Generate array of x-values for bootstrap lines: x
x = ____
# Plot the bootstrap lines
for i in range(____):
_ = plt.plot(____,
____*x + ____,
____=0.5, ____=0.2, ____='red')
# Plot the data
_ = ____
# Label axes, set the margins, and show the plot
_ = plt.xlabel('illiteracy')
_ = plt.ylabel('fertility')
plt.margins(0.02)
plt.show()