Если вы создаете регрессионую модель с ошибками ARIMA с помощью regARIMA
затем программа присваивает значения всем своим свойствам. Чтобы изменить любое из этих значений свойств, вам не нужно восстанавливать целую модель. Можно изменить значения свойств существующей модели с помощью записи через точку. Чтобы получить доступ к свойству, введите имя модели, затем имя свойства, разделенное '|.|' (точка).
Задайте регрессионую модель с ошибками ARIMA (3,1,2)
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=1×3 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
с помощью данных отклика и трех рядов предикторов, затем программное обеспечение фиксирует параметры non-|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
estimate
| forecast
| regARIMA
| simulate