Модель, созданная 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's 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 с 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 для включения, например, двух коэффициентов и соответствующий двум последовательностям предикторов. Начиная с 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). (степень сезонного оператора), D (степень несезонного дифференцирования) или s (степень сезонного дифференцирования) изменения.
Q. Это свойство автоматически обновляется, когда или q (степень несезонного оператора 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} = NaNMdl =
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 ®.