r - 如何在 R 中构建以下模型
问题描述
我想在 R 中构建以下模型,
Yt = A+B*Xt+Nt
其中 Xt 是时间,B 是趋势系数以及Nt = φNt-1+et φ
残差和等白噪声的一阶自相关。
我尝试使用 gls 函数如下
fm <- gls(Y~1+T,correlation=corAR1(value=acf(Y,na.action=na.pass)$acf[2],form=~1),na.action=na.omit)
但我不完全确定它是否按照我想要的方式对残差进行建模。
此外,我想在我的结果中得到 Nt 和 et 的时间序列,以便计算 Nt (σΝ) 的方差。我将不胜感激任何帮助。谢谢
解决方案
使用 resid 得到你想要的。完整的代码
et=rnorm(100)
tt=1:length(et)
Nt=et[1]
for (i in 2:length(et))Nt[i]=0.6*Nt[i-1]+et[i]
Yt=100+3*tt+Nt
fm <- gls(Yt~1+tt,correlation=corAR1(value=acf(Yt,na.action=na.pass)$acf[2],form=~1),na.action=na.omit)
summary(fm)
res=resid(fm)
plot(ts(res))
lines(ts(Nt),col=3)
acf(resid(fm))
acf(Nt)
推荐阅读
- python - 具有 if 条件的字符串列表上的方法或函数应用
- html - 仅使用 CSS 的 SVG 波浪效果
- css - 我为图标使用了 mdi-react 包,但是当它与 scss 结合使用时,“font-size”属性不起作用
- python - 使用 Python Socket 连接 AWS EC2 实例
- c# - 没有数组名称的 JSON 数组进入属性
- sql - Google BigQuery GROUP BY 要求提供不需要的列
- excel - 根据另一列的行数对列进行编号
- visual-studio-code - VSCode VIM中的命令悬停工具提示而不使用鼠标
- azure-cli - 有没有办法使用 az acr build 指定隔离模式?
- go - 为什么 Golang GORM 挂钩 BeforeUpdate,AfterUpdate 不触发?