R语言基于滞后值调用oos函数循环填充样本外模拟结果矩阵求助
你要的递推填充逻辑可以直接用for循环实现,代码如下:
# 遍历填充241位到最后一位的结果 for (i in 241:nrow(results)) { # 取前一位的结果作为rv参数传入oos函数 results[i] <- oos(alpha = alpha, rho = rho, rv = results[i-1]) }
逻辑说明:
- 循环变量
i覆盖你需要填充的241~1239所有位置 - 每次计算时直接取
i前一个位置的results[i-1]作为参数传入oos,计算结果直接赋值给当前位置即可,完全匹配你预期的递推规则。
如果不需要保留oos函数的封装,也可以直接把计算逻辑写在循环里,效果完全一致:
for (i in 241:nrow(results)) { results[i] <- alpha + rho * results[i-1] }
内容的提问来源于stack exchange,提问作者Miguel Franco
相关产品推荐
相关产品推荐

