Учет различных переменных длин после дифференцирования в линейной модели в R

Борьба с Р.

Моя линейная модель lm() содержит переменные, которые дифференцируются с помощью diff(), и переменные, которые не дифференцируются. Разностные переменные на одно наблюдение короче из-за различий. Следовательно, lm() выдает сообщение об ошибке различной длины.

Моя идея решения этой ошибки состоит в том, чтобы как-то определить переменные как временные ряды (которые они в любом случае, но R не знает об этом), а затем точно указать lm-Model, какие годы использовать (годовые данные).

В моем понимании, после дифференцирования временной ряд теряет свое первое наблюдение, поэтому, поскольку я использую функцию ts()-Funktion, я установлю начальный год через год для разностной функции.

Более конкретно: допустим, я импортировал переменные x и y, тогда я иду

dx<-diff(x, lag=1, differences=1) 

пока у остается прежним

lm(y~dx) 

затем выдаст указанную ошибку.

Допустим, x и y оба начинаются в 1900 году. Затем dx начинается в 1901 году, так что lm должен начаться в 1901 году для всех переменных. Моя идея, как указано выше, явно сделать обе переменные временным рядом

tsdx<-ts(dx, frequency=1, start=1901)
tsy<-ts(y, frequency=1, start:1900) 

а затем как-то сказать lm() начать с 1901 года.

Это хороший способ справиться с этими проблемами? И как бы я закодировал последний шаг? Большое спасибо!

0 ответов

Другие вопросы по тегам