我想运行时间序列回归,并将一系列因变量作为列。我想在一组自变量上回归每一列。我知道你可以使用
lm(dataframe~independent variables)
因为如果因变量是一个矩阵,那么它们只会遍历每一列。
但是,我的因变量是关于股票随时间变化的信息,有时候每个时间点的每一只股票都没有信息,所以我有一些NA值。我遇到的问题是,如果我使用 lm ,我必须省略NA值,即 lm 函数在运行回归时删除整行。如果我只想对一个因变量运行回归,这很好,但我有一个列表(1000+)的因变量,我想运行我的回归。因为我的数据集只有15年以上,所以非常单个时间点缺少值,所以当我运行lm回归时,我得到一个错误,因为lm函数在运行回归时删除了每一行。我能想到解决这个问题的唯一方法是运行for循环并为每个库存运行一个单独的回归,我认为这需要很长时间才能计算出来。例如,以下是我的数据示例:
135081(P) 135084(P) 135090(P)
1994-12-30 NA NA NA
1995-01-02 NA NA NA
1995-01-03 06864935 NA NA
1995-01-04 NA NA -0.05474644
1995-01-05 NA NA 0.20894900
1995-01-06 NA -0.45672832 -0.02378632
所以如果我对此运行时间序列回归,我会得到一个错误,因为lm函数会跳过每一行。
所以我的问题是,是否有另一种方法可以在具有不同DEPENDENT变量的数据框架上运行时间序列回归,其中回归“跳过”仅针对一个特定因变量的NA,而不是为每个其他依赖变量跳过它变量也是?
我不认为使用na.omit是正确的,因为它删除了我的数据集的时间序列属性,并且使用na.action = NULL不起作用,因为我的数据集中有NA。 非常感谢你的帮助。
答案 0 :(得分:0)
您可能希望使用类似于CRAN上的Amelia 2软件包的多重插补方法,以便正确地解释由于缺失而导致的估计中的不确定性增加,并且还有助于最大程度地减少因案例删除而导致的偏差。例如见:
Honaker,J。和King,G。(2010)。如何处理时间序列横截面数据中的缺失值。 美国政治学杂志,54(2):561-581。