Подходящая векторная модель (VAR) авторегрессии к данным
EstMdl = estimate(Mdl,Y)
EstMdl = estimate(Mdl,Y,Name,Value)
[EstMdl,EstSE]
= estimate(___)
[EstMdl,EstSE,logL,E]
= estimate(___)
дополнительные опции использования заданы одним или несколькими аргументами пары "имя-значение". Например, можно задать преддемонстрационные ответы или внешние данные о предикторе.EstMdl
= estimate(Mdl
,Y
,Name,Value
)
Соответствуйте модели VAR (4) к данным об уровне безработицы и индексу потребительских цен (CPI).
Загрузите набор данных Data_USEconModel
.
load Data_USEconModel
Постройте два ряда на отдельных графиках.
figure; plot(DataTable.Time,DataTable.CPIAUCSL); title('Consumer Price Index'); ylabel('Index'); xlabel('Date');
figure; plot(DataTable.Time,DataTable.UNRATE); title('Unemployment Rate'); ylabel('Percent'); xlabel('Date');
Стабилизируйте CPI путем преобразования его в серию темпов роста. Синхронизируйте два ряда путем удаления первого наблюдения из ряда уровня безработицы.
rcpi = price2ret(DataTable.CPIAUCSL); unrate = DataTable.UNRATE(2:end);
Создайте модель VAR (4) по умолчанию с помощью краткого синтаксиса.
Mdl = varm(2,4)
Mdl = varm with properties: Description: "2-Dimensional VAR(4) Model" SeriesNames: "Y1" "Y2" NumSeries: 2 P: 4 Constant: [2×1 vector of NaNs] AR: {2×2 matrices of NaNs} at lags [1 2 3 ... and 1 more] Trend: [2×1 vector of zeros] Beta: [2×0 matrix] Covariance: [2×2 matrix of NaNs]
Mdl
является объектом модели varm
. Все свойства, содержащие значения NaN
, соответствуют параметрам, чтобы быть оцененными определенными данными.
Оцените модель с помощью целого набора данных.
EstMdl = estimate(Mdl,[rcpi unrate])
EstMdl = varm with properties: Description: "AR-Stationary 2-Dimensional VAR(4) Model" SeriesNames: "Y1" "Y2" NumSeries: 2 P: 4 Constant: [0.00171639 0.316255]' AR: {2×2 matrices} at lags [1 2 3 ... and 1 more] Trend: [2×1 vector of zeros] Beta: [2×0 matrix] Covariance: [2×2 matrix]
EstMdl
является предполагаемым объектом модели varm
. Это полностью задано, потому что все параметры знали значения. Описание указывает, что авторегрессивный полином является стационарным.
Отобразите итоговую статистику от оценки.
summarize(EstMdl)
AR-Stationary 2-Dimensional VAR(4) Model Effective Sample Size: 241 Number of Estimated Parameters: 18 LogLikelihood: 811.361 AIC: -1586.72 BIC: -1524 Value StandardError TStatistic PValue ___________ _____________ __________ __________ Constant(1) 0.0017164 0.0015988 1.0735 0.28303 Constant(2) 0.31626 0.091961 3.439 0.0005838 AR{1}(1,1) 0.30899 0.063356 4.877 1.0772e-06 AR{1}(2,1) -4.4834 3.6441 -1.2303 0.21857 AR{1}(1,2) -0.0031796 0.0011306 -2.8122 0.004921 AR{1}(2,2) 1.3433 0.065032 20.656 8.546e-95 AR{2}(1,1) 0.22433 0.069631 3.2217 0.0012741 AR{2}(2,1) 7.1896 4.005 1.7951 0.072631 AR{2}(1,2) 0.0012375 0.0018631 0.6642 0.50656 AR{2}(2,2) -0.26817 0.10716 -2.5025 0.012331 AR{3}(1,1) 0.35333 0.068287 5.1742 2.2887e-07 AR{3}(2,1) 1.487 3.9277 0.37858 0.705 AR{3}(1,2) 0.0028594 0.0018621 1.5355 0.12465 AR{3}(2,2) -0.22709 0.1071 -2.1202 0.033986 AR{4}(1,1) -0.047563 0.069026 -0.68906 0.49079 AR{4}(2,1) 8.6379 3.9702 2.1757 0.029579 AR{4}(1,2) -0.00096323 0.0011142 -0.86448 0.38733 AR{4}(2,2) 0.076725 0.064088 1.1972 0.23123 Innovations Covariance Matrix: 0.0000 -0.0002 -0.0002 0.1167 Innovations Correlation Matrix: 1.0000 -0.0925 -0.0925 1.0000
Соответствуйте модели VAR (4) к данным об уровне безработицы и индексу потребительских цен (CPI). Выборка оценки запускается в Q1 1 980.
Загрузите набор данных Data_USEconModel
.
load Data_USEconModel
Стабилизируйте CPI путем преобразования его в серию темпов роста. Синхронизируйте два ряда путем удаления первого наблюдения из ряда уровня безработицы.
rcpi = price2ret(DataTable.CPIAUCSL); unrate = DataTable.UNRATE(2:end);
Идентифицируйте индекс, соответствующий запуску выборки оценки.
estIdx = DataTable.Time(2:end) > '1979-12-31';
Создайте модель VAR (4) по умолчанию с помощью краткого синтаксиса.
Mdl = varm(2,4);
Оцените модель с помощью выборки оценки. Задайте все наблюдения перед выборкой оценки как преддемонстрационные данные. Отобразите полные сводные данные оценки.
Y0 = [rcpi(~estIdx) unrate(~estIdx)]; EstMdl = estimate(Mdl,[rcpi(estIdx) unrate(estIdx)],'Y0',Y0,'Display',"full");
AR-Stationary 2-Dimensional VAR(4) Model Effective Sample Size: 117 Number of Estimated Parameters: 18 LogLikelihood: 419.837 AIC: -803.674 BIC: -753.955 Value StandardError TStatistic PValue __________ _____________ __________ __________ Constant(1) 0.003564 0.0024697 1.4431 0.14898 Constant(2) 0.29922 0.11882 2.5182 0.011795 AR{1}(1,1) 0.022379 0.092458 0.24204 0.80875 AR{1}(2,1) -2.6318 4.4484 -0.59163 0.5541 AR{1}(1,2) -0.0082357 0.0020373 -4.0425 5.2884e-05 AR{1}(2,2) 1.2567 0.09802 12.82 1.2601e-37 AR{2}(1,1) 0.20954 0.10182 2.0581 0.039584 AR{2}(2,1) 10.106 4.8987 2.063 0.039117 AR{2}(1,2) 0.0058667 0.003194 1.8368 0.066236 AR{2}(2,2) -0.14226 0.15367 -0.92571 0.35459 AR{3}(1,1) 0.56095 0.098691 5.6839 1.3167e-08 AR{3}(2,1) 0.44406 4.7483 0.093518 0.92549 AR{3}(1,2) 0.0049062 0.003227 1.5204 0.12841 AR{3}(2,2) -0.040037 0.15526 -0.25787 0.7965 AR{4}(1,1) 0.046125 0.11163 0.41321 0.67945 AR{4}(2,1) 6.758 5.3707 1.2583 0.20827 AR{4}(1,2) -0.0030032 0.002018 -1.4882 0.1367 AR{4}(2,2) -0.14412 0.097094 -1.4843 0.13773 Innovations Covariance Matrix: 0.0000 -0.0003 -0.0003 0.0790 Innovations Correlation Matrix: 1.0000 -0.1686 -0.1686 1.0000
Поскольку степень модели VAR p равняется 4, estimate
использует только последние четыре наблюдения в Y0
как предварительная выборка.
Оцените модель VAR (4) индекса потребительских цен (CPI), уровня безработицы и действительного валового внутреннего продукта (ВВП). Включайте компонент линейной регрессии, содержащий текущую четверть и последние четыре квартала правительственных расходов потребления и инвестиций (GCE).
Загрузите набор данных Data_USEconModel
. Вычислите действительный GDP.
load Data_USEconModel
DataTable.RGDP = DataTable.GDP./DataTable.GDPDEF*100;
Постройте все переменные на отдельных графиках.
figure; subplot(2,2,1) plot(DataTable.Time,DataTable.CPIAUCSL); ylabel('Index'); title('Consumer Price Index'); subplot(2,2,2) plot(DataTable.Time,DataTable.UNRATE); ylabel('Percent'); title('Unemployment Rate'); subplot(2,2,3) plot(DataTable.Time,DataTable.RGDP); ylabel('Output'); title('Real Gross Domestic Product') subplot(2,2,4) plot(DataTable.Time,DataTable.GCE); ylabel('Billions of $'); title('Government Expenditures')
Стабилизируйте CPI, GDP и серию GCE путем преобразования каждого в серию темпов роста. Синхронизируйте ряд уровня безработицы с другими путем удаления его первого наблюдения.
inputVariables = {'CPIAUCSL' 'RGDP' 'GCE'}; Data = varfun(@price2ret,DataTable,'InputVariables',inputVariables); Data.Properties.VariableNames = inputVariables; Data.UNRATE = DataTable.UNRATE(2:end);
Расширьте ряд уровня GCE до матрицы, которая включает ее текущее значение и через четыре изолированных значения. Удалите переменную GCE
из Data
.
rgcelag4 = lagmatrix(Data.GCE,0:4); Data.GCE = [];
Создайте модель VAR (4) по умолчанию с помощью краткого синтаксиса. Вы не должны задавать компонент регрессии при создании модели.
Mdl = varm(3,4);
Оцените модель с помощью целой выборки. Задайте матрицу уровня GCE как данные для компонента регрессии. Извлеките стандартные погрешности и loglikelihood значение.
[EstMdl,EstSE,logL] = estimate(Mdl,Data.Variables,'X',rgcelag4);
Отобразите матрицу коэффициента регрессии.
EstMdl.Beta
ans = 3×5
0.0777 -0.0892 -0.0685 -0.0181 0.0330
0.1450 -0.0304 0.0579 -0.0559 0.0185
-2.8138 -0.1636 0.3905 1.1799 -2.3328
EstMdl.Beta
является матрицей 3 на 5. Строки соответствуют ряду ответа, и столбцы соответствуют предикторам.
Отобразите матрицу стандартных погрешностей, соответствующих содействующим оценкам.
EstSE.Beta
ans = 3×5
0.0250 0.0272 0.0275 0.0274 0.0243
0.0368 0.0401 0.0405 0.0403 0.0358
1.4552 1.5841 1.6028 1.5918 1.4145
EstSE.Beta
соразмерен с EstMdl.Beta
.
Отобразите loglikelihood значение.
logL
logL = 1.7056e+03
Mdl
— VARvarm
Модель VAR, содержащая неизвестные значения параметров, заданные как объект модели varm
, возвращенный varm
.
Элементы Non-NaN
в свойствах Mdl
(кроме Mdl.Covariance
) указывают на ограничения равенства. Поэтому estimate
содержит соответствующие параметры, зафиксированные по заданным значениям во время оценки.
Y
Наблюдаемый многомерный ряд ответаНаблюдаемый многомерный ряд ответа, к которому estimate
соответствует модели, заданной как numobs
-by-numseries
числовая матрица.
numobs
является объемом выборки. numseries
является количеством переменных отклика (Mdl.NumSeries
).
Строки соответствуют наблюдениям, и последняя строка содержит последнее наблюдение.
Столбцы соответствуют отдельным переменным отклика.
Y
представляет продолжение преддемонстрационного ряда ответа в Y0
.
Типы данных: double
Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми.
Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение.
Name
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.
'Y0',Y0,'X',X
использует матричный Y0
в качестве преддемонстрационных ответов, требуемых для оценки, и включает компонент линейной регрессии, состоявший из данных о предикторе в X
.y0
Преддемонстрационные ответыПреддемонстрационные ответы, чтобы инициировать образцовую оценку, заданную как пара, разделенная запятой, состоящая из 'Y0'
и numpreobs
-by-numseries
числовая матрица.
numpreobs
является количеством преддемонстрационных наблюдений.
Строки соответствуют преддемонстрационным наблюдениям, и последняя строка содержит последнее наблюдение. Y0
должен иметь, по крайней мере, строки Mdl.P
. Если вы предоставляете больше строк, чем необходимый, estimate
использует последние наблюдения Mdl.P
только.
Столбцы должны соответствовать ряду ответа в Y
.
По умолчанию estimate
использует Y(1:Mdl.P,:)
в качестве преддемонстрационных наблюдений, и затем соответствует модели к Y((Mdl.P + 1):end,:)
. Это действие уменьшает эффективный объем выборки.
Типы данных: double
X
Данные о предиктореДанные о предикторе для компонента регрессии в модели, заданной как пара, разделенная запятой, состоящая из 'X'
и числовой матрицы, содержащей столбцы numpreds
.
numpreds
является количеством переменных прогноза.
Строки соответствуют наблюдениям, и последняя строка содержит последнее наблюдение. estimate
не использует компонент регрессии в преддемонстрационный период. X
должен иметь, по крайней мере, столько наблюдений, сколько используются после преддемонстрационного периода.
В любом случае, если вы предоставляете больше строк, чем необходимый, estimate
использует последние наблюдения только.
Столбцы соответствуют отдельным переменным прогноза. Все переменные прогноза присутствуют в компоненте регрессии каждого уравнения ответа.
По умолчанию estimate
исключает компонент регрессии, независимо от его присутствия в Mdl
.
Типы данных: double
Отображение
Тип отображения информации оценки"off"
(значение по умолчанию) | "table"
| "full"
Тип отображения информации оценки, заданный как пара, разделенная запятой, состоящая из 'Display'
и значения в этой таблице.
Значение | Описание |
---|---|
"off" | estimate не отображает информацию об оценке в командной строке. |
"table" | estimate отображает таблицу информации об оценке. Строки соответствуют параметрам, и столбцы соответствуют оценкам, стандартным погрешностям, статистике t и значениям p. |
"full" | В дополнение к таблице итоговой статистики estimate отображает предполагаемые инновации ковариационные и корреляционные матрицы, loglikelihood значение, Критерий информации о Akaike (AIC), Байесов информационный критерий (BIC) и другая информация об оценке. |
Пример: 'Display',"full"
Типы данных: string
| char
'MaxIterations'
Максимальное количество итераций решателя позволено1000
(значение по умолчанию) | положительный числовой скалярМаксимальное количество итераций решателя, позволенных, заданных как пара, разделенная запятой, состоящая из 'MaxIterations'
и положительного числового скаляра.
estimate
отправляет MaxIterations
mvregress
.
Типы данных: double
Значения NaN
в Y
, Y0
и X
указывают на отсутствующие значения. estimate
удаляет отсутствующие значения из данных мудрым списком удалением.
Для предварительной выборки estimate
удаляет любую строку, содержащую по крайней мере один NaN
.
Для выборки оценки estimate
удаляет любую строку конкатенированной матрицы данных [Y X]
, содержащий по крайней мере один NaN
.
Этот тип снижения объема данных уменьшает эффективный объем выборки.
EstMdl
— Estimated VAR (p)varm
Предполагаемая модель VAR (p), возвращенная как объект модели varm
. EstMdl
является полностью заданной моделью varm
.
EstSE
— Предполагаемые, асимптотические стандартные погрешности предполагаемых параметровПредполагаемые, асимптотические стандартные погрешности предполагаемых параметров, возвращенных как массив структур, содержащий поля в этой таблице.
Поле | Описание |
---|---|
Constant | Стандартные погрешности образцовых констант, соответствующих оценкам в EstMdl.Constant , numseries -by-1 числовой вектор |
AR | Стандартные погрешности авторегрессивных коэффициентов, соответствующих оценкам в EstMdl.AR , векторе ячейки с элементами, соответствующими EstMdl.AR |
Beta | Стандартные погрешности коэффициентов регрессии, соответствующих оценкам в EstMdl.Beta , numseries -by-numpreds числовая матрица |
Trend | Стандартные погрешности линейных трендов времени, соответствующих оценкам в EstMdl.Trend , numseries -by-1 числовой вектор |
Если estimate
применяет ограничения равенства во время оценки путем фиксации каких-либо параметров к значению, то соответствующими стандартными погрешностями тех параметров является 0
.
logL
— Оптимизированное loglikelihood значение целевой функцииОптимизированное loglikelihood значение целевой функции, возвращенное в виде числа.
[1] Гамильтон, J. D. Анализ timeseries. Принстон, NJ: Издательство Принстонского университета, 1994.
[2] Йохансен, S. Основанный на вероятности вывод в векторных авторегрессивных моделях Cointegrated. Оксфорд: Издательство Оксфордского университета, 1995.
[3] Juselius, K. Модель VAR Cointegrated. Оксфорд: Издательство Оксфордского университета, 2006.
[4] Lütkepohl, H. Новое введение в несколько анализ временных рядов. Берлин: Спрингер, 2005.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.