estimate

Подбирайте векторную модель (VAR) авторегрессии к данным

Описание

пример

EstMdl = estimate(Mdl,Y) возвращает полностью заданную модель VAR (p). Эта модель хранит предполагаемые значения параметров, следующие из того, чтобы подбирать модель VAR (p) Mdl к наблюдаемой многомерной серии Y ответа использование наибольшего правдоподобия.

пример

EstMdl = estimate(Mdl,Y,Name,Value) дополнительные опции использования заданы одним или несколькими аргументами пары "имя-значение". Например, можно задать преддемонстрационные ответы или внешние данные о предикторе.

пример

[EstMdl,EstSE] = estimate(___) возвращает предполагаемые, асимптотические стандартные погрешности предполагаемых параметров с помощью любого из входных параметров в предыдущих синтаксисах.

пример

[EstMdl,EstSE,logL,E] = estimate(___) возвращает оптимизированное значение целевой функции логарифмической правдоподобности (logL) и многомерные остаточные значения (E).

Примеры

свернуть все

Подбирайте модель 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 как данные для компонента регрессии. Извлеките стандартные погрешности и значение логарифмической правдоподобности.

[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.

Отобразите значение логарифмической правдоподобности.

logL
logL = 1.7056e+03

Входные параметры

свернуть все

Модель VAR, содержащая неизвестные значения параметров в виде varm объект модели возвращен varm.

NaN- ценные элементы в свойствах указывают на неизвестные, допускающие оценку параметры. Указанные элементы указывают на ограничения равенства на параметры по оценке модели. Инновационная ковариационная матрица Mdl.Covariance не может содержать соединение NaN значения и вещественные числа; необходимо полностью задать ковариацию, или это должно быть абсолютно неизвестно (NaN(Mdl.NumSeries)).

Наблюдаемый многомерный ряд ответа, к который estimate подбирает модель в виде numobs- numseries числовая матрица.

numobs объем выборки. numseries количество переменных отклика (Mdl.NumSeries).

Строки соответствуют наблюдениям, и последняя строка содержит последнее наблюдение.

Столбцы соответствуют отдельным переменным отклика.

Y представляет продолжение преддемонстрационного ряда ответа в Y0.

Типы данных: double

Аргументы в виде пар имя-значение

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: 'Y0',Y0,'X',X использует матричный Y0 как преддемонстрационные ответы, требуемые для оценки и, включает компонент линейной регрессии, состоявший из данных о предикторе в X.

Преддемонстрационные ответы, чтобы инициировать оценку модели в виде разделенной запятой пары, состоящей из 'Y0' и numpreobs- numseries числовая матрица.

numpreobs количество преддемонстрационных наблюдений.

Строки соответствуют преддемонстрационным наблюдениям, и последняя строка содержит последнее наблюдение. Y0 должен иметь, по крайней мере, Mdl.P 'Строки' . Если вы предоставляете больше строк, чем необходимый, estimate использует последний Mdl.P наблюдения только.

Столбцы должны соответствовать ряду ответа в Y.

По умолчанию, estimate использование Y(1:Mdl.P,:) как преддемонстрационные наблюдения, и затем подбирает модель к Y((Mdl.P + 1):end,:). Это действие уменьшает эффективный объем выборки.

Типы данных: double

Данные о предикторе для компонента регрессии в модели в виде разделенной запятой пары, состоящей из 'X' и числовая матрица, содержащая numpreds столбцы.

numpreds количество переменных предикторов.

Строки соответствуют наблюдениям, и последняя строка содержит последнее наблюдение. estimate не использует компонент регрессии в преддемонстрационный период. X должен иметь, по крайней мере, столько наблюдений, сколько используются после преддемонстрационного периода.

  • Если вы задаете Y0, затем X должен иметь, по крайней мере, numobs строки (см. Y).

  • В противном случае, X должен иметь, по крайней мере, numobsMdl.P наблюдения, чтобы составлять преддемонстрационное удаление.

В любом случае, если вы предоставляете больше строк, чем необходимый, estimate использует последние наблюдения только.

Столбцы соответствуют отдельным переменным предикторам. Все переменные предикторы присутствуют в компоненте регрессии каждого уравнения ответа.

По умолчанию, estimate исключает компонент регрессии, независимо от его присутствия в Mdl.

Типы данных: double

Отображение информации оценки вводит в виде разделенной запятой пары, состоящей из 'Display' и значение в этой таблице.

ЗначениеОписание
"off"estimate не отображает информацию об оценке в командной строке.
"table"estimate отображает таблицу информации об оценке. Строки соответствуют параметрам, и столбцы соответствуют оценкам, стандартным погрешностям, статистике t и значениям p.
"full"В дополнение к таблице итоговой статистики, estimate отображает предполагаемые инновации ковариационные и корреляционные матрицы, значение логарифмической правдоподобности, Критерий информации о Akaike (AIC), Байесов информационный критерий (BIC) и другая информация об оценке.

Пример: 'Display',"full"

Типы данных: string | char

Максимальное количество итераций решателя, позволенных в виде разделенной запятой пары, состоящей из 'MaxIterations' и положительный числовой скаляр.

estimate отправки MaxIterations к mvregress.

Типы данных: double

Примечание

NaN значения в Yy0 , и X укажите на отсутствующие значения. estimate удаляет отсутствующие значения из данных мудрым списком удалением.

  • Для предварительной выборки, estimate удаляет любую строку, содержащую по крайней мере один NaN.

  • Для выборки оценки, estimate удаляет любую строку конкатенированной матрицы данных [Y X] содержа по крайней мере один NaN.

Этот тип снижения объема данных уменьшает эффективный объем выборки.

Выходные аргументы

свернуть все

Предполагаемая модель VAR (p), возвращенная как varm объект модели. EstMdl полностью заданный varm модель.

estimate использование mvregress реализовывать многомерную нормальную оценку наибольшего правдоподобия. Для получения дополнительной информации смотрите Оценку Многомерных Моделей Регрессии (Statistics and Machine Learning Toolbox).

Предполагаемые, асимптотические стандартные погрешности предполагаемых параметров, возвращенных как массив структур, содержащий поля в этой таблице.

Поле Описание
ConstantСтандартные погрешности констант модели, соответствующих оценкам в EstMdl.Constant, numseries- 1 числовой вектор
ARСтандартные погрешности авторегрессивных коэффициентов, соответствующих оценкам в EstMdl.AR, вектор ячейки с элементами, соответствующими EstMdl.AR
BetaСтандартные погрешности коэффициентов регрессии, соответствующих оценкам в EstMdl.Beta, numseries- numpreds числовая матрица
TrendСтандартные погрешности линейных трендов времени, соответствующих оценкам в EstMdl.Trend, numseries- 1 числовой вектор

Если estimate применяет ограничения равенства во время оценки путем фиксации любых параметров к значению, затем соответствующими стандартными погрешностями тех параметров является 0.

estimate извлечения все стандартные погрешности от инверсии ожидаемой матрицы информации о Фишере, возвращенной mvregress (см. стандартные погрешности (Statistics and Machine Learning Toolbox)).

Оптимизированное значение целевой функции логарифмической правдоподобности, возвращенное в виде числа.

Многомерные остаточные значения подобранной модели, возвращенной как числовая матрица, содержащая numseries столбцы.

  • Если вы задаете Y0, затем E имеет numobs строки (см. Y).

  • В противном случае, E имеет numobsMdl.P строки, чтобы составлять преддемонстрационное удаление.

Ссылки

[1] Гамильтон, J. D. Анализ Временных Рядов. Принстон, NJ: Издательство Принстонского университета, 1994.

[2] Йохансен, S. Основанный на вероятности вывод в векторных авторегрессивных моделях Cointegrated. Оксфорд: Издательство Оксфордского университета, 1995.

[3] Juselius, K. Модель VAR Cointegrated. Оксфорд: Издательство Оксфордского университета, 2006.

[4] Lütkepohl, H. Новое введение в несколько анализ временных рядов. Берлин: Спрингер, 2005.

Введенный в R2017a

Для просмотра документации необходимо авторизоваться на сайте