Изменение свойств условных средних объектов модели

Запись через точку

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

Например, начните с этой спецификации модели:

Mdl = arima(2,0,0)
Mdl = 
  arima with properties:

     Description: "ARIMA(2,0,0) Model (Gaussian Distribution)"
    Distribution: Name = "Gaussian"
               P: 2
               D: 0
               Q: 0
        Constant: NaN
              AR: {NaN NaN} at lags [1 2]
             SAR: {}
              MA: {}
             SMA: {}
     Seasonality: 0
            Beta: [1×0]
        Variance: NaN

Измените модель, чтобы удалить постоянный термин:

Mdl.Constant = 0
Mdl = 
  arima with properties:

     Description: "ARIMA(2,0,0) Model (Gaussian Distribution)"
    Distribution: Name = "Gaussian"
               P: 2
               D: 0
               Q: 0
        Constant: 0
              AR: {NaN NaN} at lags [1 2]
             SAR: {}
              MA: {}
             SMA: {}
     Seasonality: 0
            Beta: [1×0]
        Variance: NaN

Обновленный постоянный термин теперь появляется в выходе модели.

Следует иметь в виду, что каждое свойство модели имеет тип данных. Любые модификации, которые вы делаете к значению свойства, должны быть сопоставимы с типом данных свойства. Например, AR, MA, SAR, и SMA все векторы ячейки. Это среднее значение необходимо индексировать их использующий синтаксис массива ячеек.

Например, начните со следующей модели:

Mdl = arima(2,0,0)
Mdl = 
  arima with properties:

     Description: "ARIMA(2,0,0) Model (Gaussian Distribution)"
    Distribution: Name = "Gaussian"
               P: 2
               D: 0
               Q: 0
        Constant: NaN
              AR: {NaN NaN} at lags [1 2]
             SAR: {}
              MA: {}
             SMA: {}
     Seasonality: 0
            Beta: [1×0]
        Variance: NaN

Изменить значение свойства AR, присвойте AR массив ячеек. Здесь, присвойте известные содействующие значения AR:

Mdl.AR  = {0.8,-0.4}
Mdl = 
  arima with properties:

     Description: "ARIMA(2,0,0) Model (Gaussian Distribution)"
    Distribution: Name = "Gaussian"
               P: 2
               D: 0
               Q: 0
        Constant: NaN
              AR: {0.8 -0.4} at lags [1 2]
             SAR: {}
              MA: {}
             SMA: {}
     Seasonality: 0
            Beta: [1×0]
        Variance: NaN

Обновленная модель теперь имеет коэффициенты AR с заданными ограничениями равенства.

Точно так же тип данных Distribution структура данных. Структура данных по умолчанию имеет только одно поле, Name, со значением 'Gaussian'.

Distribution = Mdl.Distribution
Distribution = struct with fields:
    Name: "Gaussian"

Чтобы изменить инновационное распределение, присвойте Distribution новое имя или структура данных. Структура данных может иметь до двух полей, Name и DoF. Второе поле соответствует степеням свободы для t распределения Студента и только требуется если Name имеет значение 't'.

Задавать t распределение Студента с неизвестными степенями свободы, введите:

Mdl.Distribution = 't'
Mdl = 
  arima with properties:

     Description: "ARIMA(2,0,0) Model (t Distribution)"
    Distribution: Name = "t", DoF = NaN
               P: 2
               D: 0
               Q: 0
        Constant: NaN
              AR: {0.8 -0.4} at lags [1 2]
             SAR: {}
              MA: {}
             SMA: {}
     Seasonality: 0
            Beta: [1×0]
        Variance: NaN

Обновленная модель имеет t распределение Студента с NaN степени свободы. Чтобы задать t распределение с восемью степенями свободы, скажите:

Mdl.Distribution = struct('Name','t','DoF',8)
Mdl = 
  arima with properties:

     Description: "ARIMA(2,0,0) Model (t Distribution)"
    Distribution: Name = "t", DoF = 8
               P: 2
               D: 0
               Q: 0
        Constant: NaN
              AR: {0.8 -0.4} at lags [1 2]
             SAR: {}
              MA: {}
             SMA: {}
     Seasonality: 0
            Beta: [1×0]
        Variance: NaN

Свойство степеней свободы модели обновляется. Обратите внимание на то, что DoF поле Distribution не является непосредственно присваиваемым. Например, Mdl.Distribution.DoF = 8 не допустимое присвоение. Однако можно получить отдельные поля:

Mdl.Distribution.DoF
ans = 8

Можно изменить Mdl включать, например, два коэффициента β1=0.2 и β2=4 соответствие двум рядам предиктора. Начиная с Beta еще не был задан, вы не видели его в выходе. Включать его, введите:

Mdl.Beta=[0.2 4]
Mdl = 
  arima with properties:

     Description: "ARIMAX(2,0,0) Model (t Distribution)"
    Distribution: Name = "t", DoF = 8
               P: 2
               D: 0
               Q: 0
        Constant: NaN
              AR: {0.8 -0.4} at lags [1 2]
             SAR: {}
              MA: {}
             SMA: {}
     Seasonality: 0
            Beta: [0.2 4]
        Variance: NaN

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

Не все свойства модели являются модифицируемыми. Вы не можете изменить эти свойства в существующей модели:

  • P. Это свойство обновляется автоматически когда любой из p (степень несезонного оператора AR), ps (степень сезонного оператора AR), D (степень несезонного дифференцирования), или s (степень сезонного дифференцирования) изменения.

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

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

Несезонный и сезонный AR и задержки MA обновляются автоматически, если вы добавляете какие-либо элементы в (или удалите из), содействующие массивы ячеек AR, MA, SAR, или SMA.

Например, задайте модель AR (2):

Mdl = arima(2,0,0)
Mdl = 
  arima with properties:

     Description: "ARIMA(2,0,0) Model (Gaussian Distribution)"
    Distribution: Name = "Gaussian"
               P: 2
               D: 0
               Q: 0
        Constant: NaN
              AR: {NaN NaN} at lags [1 2]
             SAR: {}
              MA: {}
             SMA: {}
     Seasonality: 0
            Beta: [1×0]
        Variance: NaN

Выход модели показывает ненулевые коэффициенты AR в задержках 1 и 2.

Добавьте новый термин AR в задержке 12:

Mdl.AR{12} = NaN
Mdl = 
  arima with properties:

     Description: "ARIMA(12,0,0) Model (Gaussian Distribution)"
    Distribution: Name = "Gaussian"
               P: 12
               D: 0
               Q: 0
        Constant: NaN
              AR: {NaN NaN NaN} at lags [1 2 12]
             SAR: {}
              MA: {}
             SMA: {}
     Seasonality: 0
            Beta: [1×0]
        Variance: NaN

Три ненулевых коэффициента в задержках 1, 2, и 12 теперь отображение в выходе модели. Однако массив ячеек, присвоенный AR возвращает двенадцать элементов:

Mdl.AR
ans=1×12 cell array
  Columns 1 through 8

    {[NaN]}    {[NaN]}    {[0]}    {[0]}    {[0]}    {[0]}    {[0]}    {[0]}

  Columns 9 through 12

    {[0]}    {[0]}    {[0]}    {[NaN]}

AR имеет нулевые коэффициенты во всех временных задержках, чтобы обеспечить непротиворечивость с традиционной индексацией массива ячеек MATLAB®.

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

|

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

Больше о