В этом примере показано применение краткого текста regARIMA(p,D,q) для указания регрессионной модели с ошибками ARIMA.
Укажите модель регрессии по умолчанию с ошибками ARIMA (3,1,2 ):
b1L + b2L2)
Mdl = regARIMA(3,1,2)
Mdl =
regARIMA with properties:
Description: "ARIMA(3,1,2) Error Model (Gaussian Distribution)"
Distribution: Name = "Gaussian"
Intercept: NaN
Beta: [1×0]
P: 4
D: 1
Q: 2
AR: {NaN NaN NaN} at lags [1 2 3]
SAR: {}
MA: {NaN NaN} at lags [1 2]
SMA: {}
Variance: NaN
Программа устанавливает для каждого параметра значение NaNи распространение инноваций в Gaussian. Коэффициенты AR находятся на лагах 1-3, а коэффициенты MA - на лагах 1 и 2. Собственность P = p + D = 3 + 1 = 4. Поэтому программное обеспечение требует, по меньшей мере, четырех предварительных значений для инициализации временного ряда.
Проход Mdl в estimate с данными для оценки параметров, установленных на NaN. regARIMA наборы моделей Beta кому [] и не отображает его. Если передать матрицу предикторов () в estimate, то estimate оценки Beta. estimate функция выводит число коэффициентов регрессии в Beta из числа столбцов в .
Такие задачи, как моделирование и прогнозирование с использованием simulate и forecast не принимать модели хотя бы с одной NaN для значения параметра. Используйте точечную нотацию для изменения значений параметров.
Имейте в виду, что регрессионная модель перехватывает (Intercept) не идентифицируется в регрессионных моделях с ошибками ARIMA. Если вы хотите estimate Mdl, то вы должны установить Intercept к значению, использующему, например, точечную нотацию. В противном случае estimate может вернуть ложную оценку Intercept.
В этом примере показано, как указать регрессионную модель с ошибками ARIMA без перехвата регрессии.
Укажите модель регрессии по умолчанию с ошибками ARIMA (3,1,2 ):
b1L + b2L2)
Mdl = regARIMA('ARLags',1:3,'MALags',1:2,'D',1,'Intercept',0)
Mdl =
regARIMA with properties:
Description: "ARIMA(3,1,2) Error Model (Gaussian Distribution)"
Distribution: Name = "Gaussian"
Intercept: 0
Beta: [1×0]
P: 4
D: 1
Q: 2
AR: {NaN NaN NaN} at lags [1 2 3]
SAR: {}
MA: {NaN NaN} at lags [1 2]
SMA: {}
Variance: NaN
Наборы программного обеспечения Intercept до 0, но все остальные параметры в Mdl являются NaN значения по умолчанию.
С тех пор Intercept не является NaN, это ограничение равенства во время оценки. Другими словами, если вы проходите Mdl и данные в estimate, то estimate наборы Intercept до 0 во время оценки.
В общем случае, если вы хотите использовать estimate для оценки регрессионных моделей с ошибками ARIMA, где D > 0 или s > 0, необходимо установить Intercept к значению перед оценкой.
Можно изменить свойства Mdl с использованием точечной нотации.
В этом примере показано, как указать регрессионную модель с ошибками ARIMA, где ненулевые члены AR и MA находятся на несектутивных лагах.
Укажите регрессионную модель с ошибками ARIMA (8,1,4 ):
b1L + b4L4)
Mdl = regARIMA('ARLags',[1,4,8],'D',1,'MALags',[1,4],... 'Intercept',0)
Mdl =
regARIMA with properties:
Description: "ARIMA(8,1,4) Error Model (Gaussian Distribution)"
Distribution: Name = "Gaussian"
Intercept: 0
Beta: [1×0]
P: 9
D: 1
Q: 4
AR: {NaN NaN NaN} at lags [1 4 8]
SAR: {}
MA: {NaN NaN} at lags [1 4]
SMA: {}
Variance: NaN
Коэффициенты AR находятся на лагах 1, 4 и 8, а коэффициенты MA находятся на лагах 1 и 4. Программа устанавливает промежуточные задержки в 0.
Проход Mdl и данные в estimate. Программа оценивает все параметры, которые имеют значение NaN. Тогда estimate удерживает все промежуточные коэффициенты запаздывания до 0 во время оценки.
В этом примере показано, как задать значения для всех параметров регрессионной модели с ошибками ARIMA.
Укажите регрессионную модель с ошибками ARIMA (3,1,2 ):
+ 0 .5L + 0 .2L2)
где - гауссова с единичной дисперсией.
Mdl = regARIMA('Intercept',0,'Beta',[2.5; -0.6],... 'AR',{0.7, -0.3, 0.1},'MA',{0.5, 0.2},... 'Variance',1,'D',1)
Mdl =
regARIMA with properties:
Description: "Regression with ARIMA(3,1,2) Error Model (Gaussian Distribution)"
Distribution: Name = "Gaussian"
Intercept: 0
Beta: [2.5 -0.6]
P: 4
D: 1
Q: 2
AR: {0.7 -0.3 0.1} at lags [1 2 3]
SAR: {}
MA: {0.5 0.2} at lags [1 2]
SMA: {}
Variance: 1
Параметры в Mdl не содержать NaN значения, и поэтому нет необходимости его оценивать. Однако смоделировать или спрогнозировать ответы можно путем передачи Mdl кому simulate или forecast.
В этом примере показано, как задать для инновационного распределения регрессионной модели с ошибками ARIMA распределение t.
Укажите регрессионную модель с ошибками ARIMA (3,1,2 ):
+ 0 .5L + 0 .2L2)
где имеет t-распределение со степенями свободы и единичной дисперсией по умолчанию.
Mdl = regARIMA('Intercept',0,'Beta',[2.5; -0.6],... 'AR',{0.7, -0.3, 0.1},'MA',{0.5, 0.2},'Variance',1,... 'Distribution','t','D',1)
Mdl =
regARIMA with properties:
Description: "Regression with ARIMA(3,1,2) Error Model (t Distribution)"
Distribution: Name = "t", DoF = NaN
Intercept: 0
Beta: [2.5 -0.6]
P: 4
D: 1
Q: 2
AR: {0.7 -0.3 0.1} at lags [1 2 3]
SAR: {}
MA: {0.5 0.2} at lags [1 2]
SMA: {}
Variance: 1
По умолчанию используются следующие степени свободы: NaN. Если вы не знаете степеней свободы, то вы можете оценить это, пройдя Mdl и данные для estimate.
Укажите распределение t10.
Mdl.Distribution = struct('Name','t','DoF',10)
Mdl =
regARIMA with properties:
Description: "Regression with ARIMA(3,1,2) Error Model (t Distribution)"
Distribution: Name = "t", DoF = 10
Intercept: 0
Beta: [2.5 -0.6]
P: 4
D: 1
Q: 2
AR: {0.7 -0.3 0.1} at lags [1 2 3]
SAR: {}
MA: {0.5 0.2} at lags [1 2]
SMA: {}
Variance: 1
Смоделировать или спрогнозировать ответы можно путем передачи Mdl кому simulate или forecast потому что Mdl полностью указан.
В приложениях, таких как моделирование, программное обеспечение нормализует случайные t инноваций. Другими словами, Variance переопределяет теоретическую дисперсию t случайной величины (которая DoF/(DoF - 2)), но сохраняет куртоз распределения.
estimate | forecast | regARIMA | simulate