📊 Как построить график остатков регрессии с помощью Python
Как построить график остатков регрессии в Python?
Для построения графика остатков регрессии в Python можно использовать библиотеку matplotlib. Вот простой пример:
# Импортируем необходимые библиотеки
import matplotlib.pyplot as plt
import numpy as np
# Создадим случайные данные для примера
x = np.random.rand(100)
y = 2 * x + np.random.randn(100)
# Вычисляем остатки регрессии
residuals = y - 2 * x
# Строим график остатков
plt.scatter(x, residuals)
plt.axhline(y=0, color='r', linestyle='--') # Добавляем горизонтальную линию на нулевом уровне
plt.xlabel('x')
plt.ylabel('Остатки')
plt.title('График остатков регрессии')
plt.show()
В этом примере мы сначала генерируем случайные данные для примера. Затем вычисляем остатки регрессии путем вычитания предсказанных значений от фактических значений. Затем используем функцию scatter из библиотеки matplotlib, чтобы построить точечный график остатков. Мы также добавляем горизонтальную линию на нулевом уровне для наглядной оценки разницы между предсказанными и фактическими значениями.
Надеюсь, этот пример помог вам понять, как построить график остатков регрессии в Python!
Детальный ответ
Как построить график остатков регрессии в Python?
График остатков регрессии – это инструмент, который помогает нам визуализировать разницу между реальными значениями зависимой переменной и предсказанными значениями, полученными с помощью регрессионной модели. Этот график позволяет нам проверить, соответствуют ли остатки модели некоторым предположениям, таким как нормальное распределение и отсутствие систематических паттернов.
Давайте рассмотрим, как построить график остатков регрессии в Python, используя библиотеку matplotlib и scikit-learn.
Шаг 1: Загрузить данные и обучить модель
Перед тем, как построить график остатков, мы должны загрузить наши данные и обучить регрессионную модель. Для примера давайте воспользуемся датасетом sklearn.datasets и моделью sklearn.linear_model.LinearRegression.
from sklearn.datasets import load_boston
from sklearn.linear_model import LinearRegression
# Загрузка данных
boston = load_boston()
X = boston.data
y = boston.target
# Обучение модели
model = LinearRegression()
model.fit(X, y)
Мы загрузили датасет Boston Housing и разделили его на матрицу признаков X и вектор целевой переменной y. Затем мы обучили регрессионную модель с помощью LinearRegression.
Шаг 2: Получить остатки
Чтобы построить график остатков, мы должны сначала получить остатки модели. Остатки можно рассчитать, вычтя предсказанные значения модели из реальных значений.
# Получить предсказанные значения модели
y_pred = model.predict(X)
# Вычислить остатки
residuals = y - y_pred
Мы получили предсказанные значения модели, вызвав функцию predict на наших входных данных X. Затем мы вычислили остатки, вычтя предсказанные значения из реальных значений.
Шаг 3: Построить график остатков
Теперь мы можем построить график остатков с использованием библиотеки matplotlib.
import matplotlib.pyplot as plt
# Построить график остатков
plt.scatter(y_pred, residuals)
plt.xlabel('Предсказанные значения')
plt.ylabel('Остатки')
plt.title('График остатков регрессии')
plt.show()
Мы использовали метод scatter для построения графика остатков. Ось x представляет собой предсказанные значения модели, а ось y представляет остатки. Обычно, в хорошей модели остатки должны быть случайно распределены вокруг нуля без каких-либо систематических паттернов.
Этот график может помочь нам проверить, выполняются ли предположения остатков в нашей модели. Например, если остатки не случайно распределены вокруг нуля, это может указывать на наличие гетероскедастичности или нелинейности в данных.
Заключение
В этой статье мы рассмотрели, как построить график остатков регрессии в Python. Мы загрузили данные, обучили регрессионную модель, вычислили остатки и построили график остатков с использованием библиотеки matplotlib. График остатков является важным инструментом для визуализации остатков модели и проверки предположений остатков.