exponenta event banner

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

Точечная нотация

Модель, созданная 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. Второе поле соответствует степеням свободы для распределения Student t и требуется только в том случае, если Name имеет значение '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

Обновленная модель имеет распределение Student's с 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 ®.

См. также

|

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

Подробнее