В этом примере показано, как моделировать отклики регрессионной модели с безусловными возмущениями ARIMA, предполагая, что предикторы являются последовательностями белого шума.
Укажите регрессионную модель с ошибками ARIMA:
2-1,5] + ut
+ 0 .8αt-2,
где нововведения являются гауссовыми с дисперсией 1.
T = 150; % Sample size Mdl = regARIMA('MA',{1.4,0.8},'AR',0.5,'Intercept',3,... 'Variance',1,'Beta',[2;-1.5],'D',1);
Смоделировать два ряда предсказателей Гаусса со средним значением 0 и дисперсией 1.
rng(1); % For reproducibility
X = randn(T,2);Моделирование и построение графика серии ответов.
y = simulate(Mdl,T,'X',X); figure; plot(y); title 'Simulated Responses'; axis tight;

Регресс y на X. Постройте график остатков и протестируйте их для корня единицы измерения.
RegMdl = fitlm(X,y); figure; subplot(2,1,1); plotResiduals(RegMdl,'caseorder'); subplot(2,1,2); plotResiduals(RegMdl,'lagged');

h = adftest(RegMdl.Residuals.Raw)
h = logical
0
Остаточные графики показывают, что они являются автокоррелированными и, возможно, нестационарными (как построены). h = 0 указывает, что недостаточно доказательств, чтобы предположить, что остаточный ряд не является корневым процессом единицы.
Устраните нестационарные безусловные нарушения путем соответствующего преобразования данных. В этом случае различают реакции и предикторы. Повторно оцените регрессионную модель с помощью преобразованных откликов и постройте график остатков.
dY = diff(y); dX = diff(X); dRegMdl = fitlm(dX,dY); figure; subplot(2,1,1); plotResiduals(dRegMdl,'caseorder','LineStyle','-'); subplot(2,1,2); plotResiduals(dRegMdl,'lagged');

h = adftest(dRegMdl.Residuals.Raw)
h = logical
1
Остаточные графики указывают на то, что они все еще автокоррелированы, но неподвижны. h = 1 указывает, что имеется достаточно доказательств, чтобы предположить, что остаточный ряд не является корневым процессом единицы.
Как только остатки становятся неподвижными, можно определить соответствующее количество лагов для модели ошибок с помощью методологии Бокса и Дженкинса. Затем используйте regARIMA для полного моделирования регрессионной модели с ошибками ARIMA.
В этом примере показано, как моделировать отклики регрессионной модели с нестационарными, экспоненциальными, безусловными возмущениями. Предположим, что предикторы являются последовательностями белого шума.
Укажите следующую модель ошибок ARIMA:
+ αt,
где нововведения являются гауссовыми со средним значением 0 и дисперсией 0,05.
T = 50; % Sample size MdlU = arima('AR',0.9,'Variance',0.05,'D',1,'Constant',0);
Моделирование безусловных возмущений. Возведите моделируемые ошибки в степень.
rng(10); % For reproducibility u = simulate(MdlU,T,'Y0',[0.5:1.5]'); expU = exp(u);
Смоделировать два ряда предсказателей Гаусса со средним значением 0 и дисперсией 1.
X = randn(T,2);
Создание ответов из регрессионной модели с ошибками временных рядов:
+ eut.
Beta = [2;-1.5]; Intercept = 3; y = Intercept + X*Beta + expU;
Постройте график ответов.
figure plot(y) title('Simulated Responses') axis tight

Кажется, что серия ответов растет экспоненциально (в том виде, в каком она построена).
Регресс y на X. Постройте график остатков.
RegMdl1 = fitlm(X,y); figure subplot(2,1,1) plotResiduals(RegMdl1,'caseorder','LineStyle','-') subplot(2,1,2) plotResiduals(RegMdl1,'lagged')

Остатки, по-видимому, растут экспоненциально и кажутся автокоррелированными (как построено).
Устраните нестационарные безусловные нарушения путем соответствующего преобразования данных. В этом случае возьмите журнал серии ответов. Разница между зарегистрированными ответами. Рекомендуется преобразовывать предикторы так же, как и ответы, чтобы поддерживать первоначальную интерпретацию их отношений. Однако в этом случае не преобразуйте предикторы, поскольку они содержат отрицательные значения. Повторно оцените регрессионную модель с помощью преобразованных откликов и постройте график остатков.
dLogY = diff(log(y)); RegMdl2 = fitlm(X(2:end,:),dLogY); figure subplot(2,1,1) plotResiduals(RegMdl2,'caseorder','LineStyle','-') subplot(2,1,2) plotResiduals(RegMdl2,'lagged')

h = adftest(RegMdl2.Residuals.Raw)
h = logical
1
Остаточные графики указывают на то, что они все еще автокоррелированы, но неподвижны. h = 1 указывает, что имеется достаточно доказательств, чтобы предположить, что остаточный ряд не является корневым процессом единицы.
Как только остатки становятся неподвижными, можно определить соответствующее количество лагов для модели ошибок с помощью методологии Бокса и Дженкинса. Затем используйте regARIMA для полного моделирования регрессионной модели с ошибками ARIMA.
[1] Бокс, Г. Э. П., Г. М. Дженкинс и Г. К. Рейнсель. Анализ временных рядов: прогнозирование и контроль. 3-й ред. Энглвуд Клиффс, Нью-Джерси: Прентис Холл, 1994.