迭代预测动态模型

2023-11-30

我已经编写了一个函数来迭代预测使用 dyn 包构建的模型,并且我想要一些关于它的反馈。有一个更好的方法吗?有人为 dyn 类(或 dynlm 类)编写了规范的“预测”方法,还是我正在冒险进入未知领域?

ipredict <-function(model, newdata, interval = "none",
        level = 0.95, na.action = na.pass, weights = 1) {
 P<-predict(model,newdata=newdata,interval=interval,
  level=level,na.action=na.action,weights=weights)
 for (i in seq(1,dim(newdata)[1])) {
  if (is.na(newdata[i])) {
   if (interval=="none") {
    P[i]<-predict(model,newdata=newdata,interval=interval,
     level=level,na.action=na.action,weights=weights)[i]
    newdata[i]<-P[i]
   }
   else{
    P[i,]<-predict(model,newdata=newdata,interval=interval,
     level=level,na.action=na.action,weights=weights)[i,]
    newdata[i]<-P[i,1]
   }
  }
 }
 P_end<-end(P)[1]*frequency(P)+(end(P)[2]-1) #Convert (time,period) to decimal time
 P<-window(P,end=P_end-1*frequency(P)) #Drop last observation, which is NA
 return(P)
}

用法示例:

library(dyn)
y<-arima.sim(model=list(ar=c(.9)),n=10) #Create AR(1) dependant variable
A<-rnorm(10) #Create independant variables
B<-rnorm(10)
C<-rnorm(10)
Error<-rnorm(10)
y<-y+.5*A+.2*B-.3*C+.1*Error #Add relationship to independant variables 
data=cbind(y,A,B,C)

#Fit linear model
model.dyn<-dyn$lm(y~A+B+C+lag(y,-1),data=data)
summary(model.dyn)

#Forecast linear model
A<-c(A,rnorm(5))
B<-c(B,rnorm(5))
C<-c(C,rnorm(5))
y=window(y,end=end(y)+c(5,0),extend=TRUE)
newdata<-cbind(y,A,B,C)
P1<-ipredict(model.dyn,newdata)
P2<-ipredict(model.dyn,newdata,interval="prediction")

#Plot
plot(y)
lines(P1,col=2)

predict.ArimaR的核心有n.ahead预测的论证n向前迈出一步,似乎这就是您正在寻找的与 dyn 结合的东西,但是predict.dyn目前不支持该功能。为了达到这种效果,必须迭代调用dyn$whatever就像你正在做的那样。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

迭代预测动态模型 的相关文章

  • 循环遍历列并将字符串长度添加为新列

    我有一个包含多列的数据框 并且希望为每个列输出一个单独的列 其中包含每行的长度 我试图迭代列名称 并为每列输出一个附加有 length 的相应列 例如 col1 col2 将转到 col1 列2 col1 长度 列2 长度 我正在使用的代码
  • 如何找到对象的创建位置?

    我目前正在努力改进对其他脚本有不同调用的代码 我想知道在哪里创建对象 对于其中一些人来说 只需使用文本编辑器的搜索选项即可 只要看看是否obj lt or obj 有什么结果 但这不适用于使用assign功能 在加载的脚本中创建的也不是 T
  • lme4:如何指定 2 个与随机截距的相关性,而不添加随机斜率之间的相关性

    重新发布自stats stackexchange com https stats stackexchange com q 195385 33560 我试图在 R 的 lme4 包中指定一个模型 其中随机截距和随机斜率之间有 2 个相关性 但
  • 将线条剪裁到绘图区域并在绘图区域外显示文本

    我想限制绘图的可见 y 范围 为了保留超出此范围的值 我需要设置oob 出界 to rescale none这效果很好 不过 我还想在图外的页边空白处添加一些文本 为了做到这一点 我需要关闭剪辑 这会导致超出范围的值被绘制在绘图区域之外的边
  • 替换为 NA

    我有一个包含条目的数据框 看来这些值没有被视为 NA 因为 is na 返回 FALSE 我想将这些值转换为 NA 但找不到方法 Use dfr dfr
  • 为 PDF 输出添加 natbib 选项

    有没有办法指定natibib输出 PDF 时的选项bookdown 我希望 tex 输出具有命令 usepackage sort compress natbib 但似乎没有任何方法可以在 YAML 中指定它 我无法将命令添加到我的序言中 因
  • 是否可以使用像“tz=NULL”这样的东西?...“as.POSIXct”默认为依赖于语言环境的时区(与“as.Date”不同),这会导致问题

    我知道这是一个长期存在 根深蒂固的问题 但这是我经常遇到的问题 而且我看到初学者R经常与此斗争 我希望有一个令人满意的解决方案 到目前为止 我的谷歌和 SO 搜索都是空的 但如果在其他地方重复 请指出正确的方向 TL DR 有没有办法使用类
  • 如何规划庭院灯最有效的路线

    我正在尝试挂一些庭院灯 基于另一个问题 https cs stackexchange com questions 80134 christmas light route efficiency我问 我意识到我需要一种算法来解决路由检查问题 h
  • R 中的 For 循环分配给数据框

    运行 for 循环后 我在分配给数据帧时遇到问题 当我使用 print 时 它给出了我的价值 有什么解释吗 salesdate lt rep seq from as Date 2013 12 19 to as Date 2013 12 23
  • 没有垂直线的直方图

    当我创建直方图时 它看起来很像这样 set seed 1 x lt 1 100 y lt x rnorm 50 y round y hist y Is there a way to make a histogram look a bit l
  • 根据绘图单击事件对数据框进行子集化

    我有下面的数据框 Name lt c John Bob Jack Number lt c 3 3 5 NN lt data frame Name Number 还有一个简单闪亮的应用程序 可以从中创建一个绘图直方图 我的目标是单击直方图的一
  • R Plotly 禁用图例单击和图例双击

    我想使用 R Plotly 从服务器端禁用绘图图例选择 我们看here https community plot ly t disable legend click functionality hiding traces 1345 2可以使
  • 使用 dplyr 按组计算加权平均值(并复制其他方法)

    我对语法感到困惑dplyr当尝试计算加权平均值时 我听从大卫的建议here https stackoverflow com a 27609266 1457380 语法非常透明 因此很有吸引力 但它似乎没有按我的预期工作 低于加权平均值是针对
  • 根据感兴趣的特定单词绘制高度相关的单词[关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 我正在尝试绘制一个单词的最高相关性 例如 我想绘制 鲸鱼 一词的最高十个相关性的图表 有人可以帮我执行类似的命令吗 如果有帮助的话我已经安装
  • 插值时间序列

    我有两组具有不同时间戳的数据 一组数据包含校准数据 另一组包含样本数据 校准的频率比样品少得多 我想做的是将校准数据 低频 插值到采样时间序列 高频 上 sam lt textConnection time value 01 00 52 2
  • 对 R/Sweave 进行编程以获得正确的 \Sexpr 输出

    我在为 Sweave 进行 R 编程时遇到了一些问题 rstats twitter 小组经常指出这里 所以我想我应该把这个问题向大家提出 我是一名分析师 而不是程序员 所以在我的第一篇文章中请放轻松 问题是 我正在使用 R 在 Sweave
  • 是否可以在 R 中创建自定义 pch 形状?

    R 中的许多绘图函数都使用图形参数pch指定数据点的形状 根据R 文档 https www rdocumentation org packages graphics versions 3 6 2 topics points 有 26 个矢量
  • 如何在 R 中使用 msgbox [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 如何在中显示消息框R 我正在寻找类似的东西msgbox在 VBA 中 因此我可以向用户发出有关问题的警报 此外 我想允许一些用户交互 例如
  • ggplot2:图例中的斜体

    我正在尝试编辑图例中的标签 以便第一个标签 WT 为纯文本 而后续 7 个标签为斜体 我一直在使用element text face c plain rep italic 7 但这导致没有任何标签被转换为斜体 我有点困惑为什么它不起作用 因
  • 生成与现有变量具有预定义相关性的二进制变量

    对于模拟研究 我想生成一组随机变量 连续变量和二元变量 这些变量与已经存在的变量具有预定义的关联binary变量 此处表示为x 对于这篇文章 假设x是按照下面的代码生成的 但请记住 在现实生活中 x是一个已经存在的变量 set seed 1

随机推荐

  • 使用 rvest 读取表

    这是一个表的链接 其中包含约 290 种藤本植物名称 https www forestryimages org browse catsubject cfm cat 51 我正在尝试阅读表格并保留Common Names柱子 我尝试过用rve
  • Kotlin 更新到 1.6.0 后,不确定如何将 Cursor 转换为该方法的返回类型

    我正在使用安卓房间我项目中的库用于操作 SQLite 数据库中的数据 并且在以前的 Kotlin 版本 1 5 31 中一切正常 这是我的 DAO 的示例 Dao interface ServersDao Query SELECT FROM
  • Zuul 路由到 HTTPS url 时出错

    我有一个 Spring Boot 应用程序 最近启用了 HTTPS 自签名证书 该应用程序在 Eureka 中注册并在 Eureka 仪表板中可见 我们有一个 Zuul Filter 层 它获取用户请求 然后将其传递给 Spring Boo
  • 如何将 3 个元素放在父 div 中的一行中?

    我已将 3 个 div 元素放入另一个 div 元素中 如下所示 div div class baby div div class baby div div class baby div div 当调整浏览器大小以使父级的宽度发生变化时 会
  • 如何在 ggplot2 中重新排序图例?

    给定一个两列数据框 其中包含标签的分类列和百分比数据的定量列 我可以在 ggplot 中可靠地生成一个条形图 该条形图按值而不是按字母顺序排序 使用以下命令 ggplot data df aes x reorder Label Percen
  • AJAX json 意外标记'

    我有这个代码 ajax dataType text url js answers json type GET success function data alert data alert data code var result JSON
  • Node、Mongoose:使用删除从查询结果中删除 json 元素

    我得到这种奇怪的行为 事情是这样的 我进行了一个数据库查询 想要删除查询返回的 json 的一个元素 所以这似乎不起作用 即元素没有被删除 var user json delete user element 虽然这有效 var user e
  • 无法在 Swift 4 中使用 JSONDecoder 解析 JSON 数组

    我有一个需要解析的 JSON 数组 我选择使用 JSONDecoder 来解析它 JSON 数组如下所示 Id 0 Key key0 Name name0 Title title0 Id 1 Key key1 Name name1 Titl
  • 计算 3 个整数的平均值

    我的任务是修复代码 我在下面有我编辑过的代码和下面的原始代码 我想我这里仍然有一些错误 我的错误检查似乎不起作用 并且我不确定我的 getchar 函数是否已编写或正常工作 请假设我什么都不知道 因为这是相当准确的 代码可以编译 但答案始终
  • 选择 ng-repeat 内的所有复选框

    我在 ng repeat 中有一个复选框列表 如下所示 div div
  • 获取最近 10 个日期的行

    我在 Postgres 9 3 数据库中有一个场景 我必须获取书籍销售的最后 10 个日期 考虑下面的例子 Store Book Id Name Id Name Sid Count Date 1 ABC 1 XYZ 1 20 11 11 2
  • 发送 ICMP ping

    对于 ICMP ping 请求 回显请求 我是否需要获取目的地的 MAC 地址 我正在尝试学习如何使用原始套接字在 C 中实现此功能 但无法理解如何获取目标的 MAC 地址 任何帮助表示赞赏 谢谢 我需要获取目的地的MAC地址吗 不 在大多
  • 在 iOS 5.1 中获取 CellID、MCC、MNC、LAC 和网络

    我需要在 iOS 5 1 iPhone 4S 中检索当前服务基站的 CellID MCC MNC LAC 和网络 GSM 3G 我知道此信息可用 因为我可以在 FieldTest 模式下看到它 拨打 3001 12345 后即可访问 我想它
  • 别名 javascript 关键字

    我可以为 JavaScript 关键字添加别名吗 例如 我可以设置一个简写吗function to be func func add a b return a b 或快捷方式delete del a 你不能 命名关键字是您无法控制的
  • 在 SSIS 中使用 C# 读取 JSON API

    我想从 SSIS 中的 JSON API 读取一些数据并将其写入 SQL Server 中的表 我已经使用第三方解决了该任务 但解决方案并不是那么优雅 所以现在我尝试使用 SSIS 的脚本组件在 Visual Studio 中自己编写脚本
  • CSS 查询字符串

    是否可以将查询字符串传递到样式表中 如果可以 CSS 可以处理它吗 i e http www domain com css somestyle css id 102992992 我在查看 basecamps 源代码时注意到样式表有一个查询字
  • 查看范围:java.io.NotSerializedException:javax.faces.component.html.HtmlInputText

    每次按钮从 backing bean 调用操作时都会出现错误 仅适用于具有视图范围的 bean 并且我还没有找到一种方法来修复它而不会对代码中的其他模块进行回归 DefaultFacele E Exiting serializeView C
  • MySQL如何将十进制值转换为度、分、秒

    我有一个十进制值123 77 现在我想把它转换成对应的degree minute second使用 MySQL 的值 我尝试了多种方法但无法得到正确的答案 请帮忙 就是这样 整个度数单位将保持不变 即在 121 135 经度中 从 121
  • 计算文本宽度

    我正在尝试使用 jQuery 计算文本宽度 我不确定是什么 但我肯定做错了什么 所以 这是代码 var c calltoaction var cTxt c text var cWidth cTxt outerWidth c css widt
  • 迭代预测动态模型

    我已经编写了一个函数来迭代预测使用 dyn 包构建的模型 并且我想要一些关于它的反馈 有一个更好的方法吗 有人为 dyn 类 或 dynlm 类 编写了规范的 预测 方法 还是我正在冒险进入未知领域 ipredict lt function