Как проверить нормальность распределения остактов и дисперсию остатков для модели sklearn.linear_model?
Имеются следующие данные:
date_trunc mentor mentee
0 2021-02-01 3 3
1 2021-03-01 3 3
2 2021-04-01 7 7
3 2021-05-01 18 19
4 2021-06-01 24 27
5 2021-07-01 37 35
6 2021-08-01 53 56
7 2021-09-01 63 70
8 2021-10-01 86 89
9 2021-11-01 102 114
10 2021-12-01 135 149
11 2022-01-01 154 169
12 2022-02-01 174 202
13 2022-03-01 232 287
14 2022-04-01 298 386
15 2022-05-01 343 475
16 2022-06-01 384 552
17 2022-07-01 446 684
18 2022-08-01 509 883
19 2022-09-01 469 757
Я использую следующие библиотеки:
from sklearn.linear_model import LinearRegression
from sklearn.model_selection import train_test_split
from sklearn.metrics import mean_squared_error, mean_absolute_error, r2_score
Код для построения линейной регрессии:
# подготовка данных
x = df['mentee'].to_numpy().reshape(-1, 1)
y = df['mentor'].to_numpy()
# разделение данных на тренировочные и тестовые
x_train, x_test, y_train, y_test = train_test_split(x, y, test_size=0.2)
# обучение модели и прогнозирование
model = LinearRegression().fit(x_train, y_train)
y_pred = model.predict(x_test)
# проверка модели
mse = mean_squared_error(y_test, y_pred)
mae = mean_absolute_error(y_test, y_pred)
print('mse: %.3f, sqrt(mse): %.3f, mae: %.3f' % (mse, np.sqrt(mse), mae))
print("Coefficients: \n", model.coef_)
print('Independent: \n', model.intercept_)
Мне осталось только проверить нормальность распределения остатков и однородность дисперсии остатков. Как это сделать?