Измените regARIMA Model Properties

Изменение свойств Используя запись через точку

Если вы создаете модель регрессии с ошибками ARIMA regARIMA, то программное обеспечение присваивает значения всем его свойствам. Чтобы изменить любые из этих значений свойств, вы не должны восстанавливать целую модель. Можно изменить значения свойств существующей модели с помощью записи через точку. Чтобы получить доступ к свойству, введите имя модели, затем имя свойства, разделенное '|. |' (период).

Задайте модель регрессии с ARIMA (3,1,2) ошибки

yt=c+ut(1-ϕ1L-ϕ2L2-ϕ3L3)(1-L)Dut=(1+θ1L+θ2L2)εt.

Mdl = regARIMA(3,1,2);

Используйте обозначение массива ячеек, чтобы установить параметры авторегрессивного и скользящего среднего значения на значения.

Mdl.AR = {0.2 0.1 0.05};
Mdl.MA = {0.1 -0.05}
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: {0.2 0.1 0.05} at lags [1 2 3]
             SAR: {}
              MA: {0.1 -0.05} at lags [1 2]
             SMA: {}
        Variance: NaN

Используйте запись через точку, чтобы отобразить авторегрессивные коэффициенты Mdl в Командном окне.

ARCoeff = Mdl.AR
ARCoeff = 1x3 cell array
    {[0.2000]}    {[0.1000]}    {[0.0500]}

ARCoeff является 1 3 массивом ячеек. Каждый, последовательная ячейка содержит следующие авторегрессивные задержки.

Можно также добавить больше коэффициентов задержки.

Mdl.MA = {0.1 -0.05 0.01}
Mdl = 
  regARIMA with properties:

     Description: "ARIMA(3,1,3) Error Model (Gaussian Distribution)"
    Distribution: Name = "Gaussian"
       Intercept: NaN
            Beta: [1×0]
               P: 4
               D: 1
               Q: 3
              AR: {0.2 0.1 0.05} at lags [1 2 3]
             SAR: {}
              MA: {0.1 -0.05 0.01} at lags [1 2 3]
             SMA: {}
        Variance: NaN

По умолчанию спецификация устанавливает новый коэффициент на следующую, последовательную задержку. Сложение нового коэффициента увеличивает Q на 1.

Можно задать коэффициент задержки к определенному термину задержки при помощи индексации ячейки.

Mdl.AR{12} = 0.01
Mdl = 
  regARIMA with properties:

     Description: "ARIMA(12,1,3) Error Model (Gaussian Distribution)"
    Distribution: Name = "Gaussian"
       Intercept: NaN
            Beta: [1×0]
               P: 13
               D: 1
               Q: 3
              AR: {0.2 0.1 0.05 0.01} at lags [1 2 3 12]
             SAR: {}
              MA: {0.1 -0.05 0.01} at lags [1 2 3]
             SMA: {}
        Variance: NaN

Авторегрессивный коэффициент 0.01 расположен в 12-й задержке. Свойство P увеличивается до 13 с новой спецификацией.

Установите инновационное распределение на t распределение со степенями свободы NaN.

Distribution = struct('Name','t','DoF',NaN);
Mdl.Distribution = Distribution
Mdl = 
  regARIMA with properties:

     Description: "ARIMA(12,1,3) Error Model (t Distribution)"
    Distribution: Name = "t", DoF = NaN
       Intercept: NaN
            Beta: [1×0]
               P: 13
               D: 1
               Q: 3
              AR: {0.2 0.1 0.05 0.01} at lags [1 2 3 12]
             SAR: {}
              MA: {0.1 -0.05 0.01} at lags [1 2 3]
             SMA: {}
        Variance: NaN

Если DoF является NaN, то estimate оценивает степени свободы. Для других задач, таких как симуляция или прогнозирование модели, необходимо задать значение для DoF.

Чтобы задать коэффициент регрессии, присвойте вектор свойству Beta.

Mdl.Beta = [1; 3; -5]
Mdl = 
  regARIMA with properties:

     Description: "Regression with ARIMA(12,1,3) Error Model (t Distribution)"
    Distribution: Name = "t", DoF = NaN
       Intercept: NaN
            Beta: [1 3 -5]
               P: 13
               D: 1
               Q: 3
              AR: {0.2 0.1 0.05 0.01} at lags [1 2 3 12]
             SAR: {}
              MA: {0.1 -0.05 0.01} at lags [1 2 3]
             SMA: {}
        Variance: NaN

Если вы передаете Mdl в estimate с данными об ответе и тремя рядами предиктора, то программные исправления не - | NaN | параметры в их значениях, и оценивают Intercept, Variance и DoF. Например, если вы хотите моделировать данные из этой модели, затем необходимо задать Variance и DoF.

Немодифицируемые свойства

Не все свойства модели regARIMA являются модифицируемыми. Чтобы изменить их непосредственно, необходимо переопределить модель с помощью regARIMA. Немодифицируемые свойства включают:

  • P, который является составной авторегрессивной полиномиальной степенью. Программное обеспечение определяет P от p, d, ps и s. Для получения дополнительной информации на обозначении, см. Модель Регрессии с Ошибками Временных рядов ARIMA.

  • Q, который является составной степенью скользящего среднего значения. Программное обеспечение определяет Q от q и qs

  • DoF, который является степенями свободы для моделей, имеющих t - распределенный инновационный процесс

Хотя они не явным образом свойства, вы не можете повторно присвоить или распечатать структуру задержки с помощью ARLags, MALags, SARLags или SMALags. Передайте их и структуру задержки в regARIMA как аргументы пары "имя-значение", когда вы зададите модель.

Например, задайте модель регрессии с ARIMA (4,1) ошибки regARIMA, где авторегрессивные коэффициенты происходят в задержках 1 и 4.

Mdl = regARIMA('ARLags',[1 4],'MALags',1)
Mdl = 
  regARIMA with properties:

     Description: "ARMA(4,1) Error Model (Gaussian Distribution)"
    Distribution: Name = "Gaussian"
       Intercept: NaN
            Beta: [1×0]
               P: 4
               Q: 1
              AR: {NaN NaN} at lags [1 4]
             SAR: {}
              MA: {NaN} at lag [1]
             SMA: {}
        Variance: NaN

Можно привести к тем же результатам путем определения модели регрессии с ARMA (1,1) ошибки, затем добавления авторегрессивного коэффициента в четвертой задержке.

Mdl = regARIMA(1,0,1);
Mdl.AR{4} = NaN
Mdl = 
  regARIMA with properties:

     Description: "ARMA(4,1) Error Model (Gaussian Distribution)"
    Distribution: Name = "Gaussian"
       Intercept: NaN
            Beta: [1×0]
               P: 4
               Q: 1
              AR: {NaN NaN} at lags [1 4]
             SAR: {}
              MA: {NaN} at lag [1]
             SMA: {}
        Variance: NaN

Чтобы изменить значение DoF, необходимо задать новую структуру для распределения и использовать запись через точку, чтобы передать его в модель. Например, задайте модель регрессии с AR (1) ошибки, имеющие t - распределенные инновации.

Mdl = regARIMA('AR',0.5,'Distribution','t')
Mdl = 
  regARIMA with properties:

     Description: "ARMA(1,0) Error Model (t Distribution)"
    Distribution: Name = "t", DoF = NaN
       Intercept: NaN
            Beta: [1×0]
               P: 1
               Q: 0
              AR: {0.5} at lag [1]
             SAR: {}
              MA: {}
             SMA: {}
        Variance: NaN

Значением DoF является NaN по умолчанию.

Укажите, что распределение t имеет 10 степеней свободы.

Distribution = struct('Name','t','DoF',10);
Mdl.Distribution = Distribution
Mdl = 
  regARIMA with properties:

     Description: "ARMA(1,0) Error Model (t Distribution)"
    Distribution: Name = "t", DoF = 10
       Intercept: NaN
            Beta: [1×0]
               P: 1
               Q: 0
              AR: {0.5} at lag [1]
             SAR: {}
              MA: {}
             SMA: {}
        Variance: NaN

Смотрите также

| | |

Связанные примеры

Больше о