【发布时间】:2016-04-12 11:53:53
【问题描述】:
我是 R 和统计的新手。
我有一个包含 277 家公司股票收益的矩阵,该矩阵包含 370 行。由于这些公司的年龄不同,因此列中的观察量存在差异。我还有一个包含 Fama French 因子的矩阵和一个包含虚拟变量的向量。我已经设法创建了一个循环来获取回归的系数,但是我需要检索包含回归残差的矩阵或残差的协方差矩阵,以便我可以执行 GRS 测试。
我目前使用的代码是:
reg <- data.frame(matrix(nrow=370, ncol=277))
for (i in c(1:277)) {
reg[,i] <- dynlm(returns.ts[,i] ~ 1 + Mkt.Rf + SMB + HML)$residuals
}
但是,当我运行此循环时,我得到“替换有 202 行,数据有 370”错误。我假设这是因为列长度不同,因为前两列(属于具有“完整”观察结果的公司)填充在返回矩阵中。
我试过 na.action = na.omit 没有成功。有没有办法用这些回归的残差填充这个矩阵?或者是否有可能获得绕过此步骤的协方差矩阵?我正在使用 R。
【问题讨论】:
标签: r loops matrix regression