Этот пример показывает, как применить краткий синтаксис regARIMA(p,D,q)
, чтобы задать модель регрессии с ошибками ARIMA.
Задайте модель регрессии по умолчанию с ARIMA (3,1,2) ошибки:
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) ошибки:
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) ошибки:
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) ошибки:
где является Гауссовым с модульным отклонением.
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) ошибки:
где имеет 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
.
Задайте a распределение.
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