Как исправить гетероскедастичность для модели множественной линейной регрессии - PullRequest
0 голосов
/ 11 ноября 2019

Я подгоняю модель множественной линейной регрессии с 6 предикторами (3 непрерывных и 3 категориальных). Остатки в сравнении с подогнанным графиком показывают, что существует гетероскедастичность, также это подтверждается bptest ().

Сводка sales_lm

остатков против подогнанного графика

Также я рассчитал sqrt для моих данных о поездах и данных испытаний, как показано ниже:

sqrt(mean(sales_train_lm_pred-sales_train$SALES)^2)

2 3533.665

 sqrt(mean(sales_test_lm_pred-sales_test$SALES)^2)

2 3556.036

Я пытался соответствовать модели glm (), но все еще не исправлял гетероскедастичность.

 glm.test3<-glm(SALES~.,weights=1/sales_fitted$.resid^2,family=gaussian(link="identity"), data=sales_train)

остаток по сравнению с подогнанным графиком дляglm.test3 выглядит странно. glm.test3 сюжет

Не могли бы вы помочь мне, что мне делать дальше?

Заранее спасибо!

1 Ответ

0 голосов
/ 11 ноября 2019

То, что вы наблюдаете гетероскедастичность ваших данных, означает, что дисперсия не является стационарной. Вы можете попробовать следующее:

1) Применить однопараметрическое преобразование Бокса-Кокса (из которых лог-преобразование является особым случаем) с подходящим lambda к одному илибольше переменных в наборе данных. Оптимальный lambda можно определить, взглянув на его функцию логарифмического правдоподобия. Взгляните на MASS::boxcox.

2) Поиграйте с вашим набором функций (уменьшите, увеличьте, добавьте новые переменные).

2) Использовать метод взвешенной линейной регрессии.

...