0

与 R 斗争。

我的线性 lm() 模型包含通过 diff() 区分的变量和不区分的变量。由于差异,差异变量是一个较短的观察值。因此,lm() 给出了不同长度的错误信息。

我对这个错误的解决方案的想法是,以某种方式将变量定义为时间序列(无论如何它们都是,但 R 不知道),然后准确地告诉 lm-Model,使用哪些年份(年度数据)。

据我了解,在差分之后,时间序列失去了它的第一个观察结果,因此,当我使用 ts()-Funktion 时,我将在一年后为差分函数设置起始年份。

更具体:假设我导入了变量 x 和 y 然后我去

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

而 y 保持不变

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 年开始。

这是处理这些问题的好方法吗?我将如何编码最后一步?非常感谢!

4

0 回答 0