r - 如何“映射”或“应用”以从每一列中获得最佳测试版
问题描述
谁能为我提供有关如何使用函数(应用或映射系列)从用于计算 HOLT 预测的每一列中找到最佳 beta 的指导。这是总共有两列的数据。
structure(list(T = c(6753L, 6763L, 6803L, 6806L, 6777L, 6799L,
6809L, 6832L, 6838L, 6831L, 6838L, 6807L, 6782L, 6809L, 6785L,
6766L, 6788L, 6704L, 6656L, 7093L, 7091L, 7100L, 7074L, 7047L,
7063L, 7070L, 7068L, 7054L, 7056L, 7067L, 7040L, 7027L, 7032L,
7055L, 7058L, 7051L, 7074L, 7109L, 7103L, 7127L, 7121L, 7111L,
7123L, 7147L, 7119L, 7106L, 7103L, 7091L, 7097L, 7103L, 7086L,
7099L, 7094L, 7139L, 7186L, 7198L, 7248L, 7274L, 7319L, 7329L,
7384L, 7410L, 7479L), C = c(2307L, 2296L, 2297L, 2287L, 2273L,
2259L, 2246L, 2230L, 2215L, 2194L, 2175L, 2110L, 2098L, 2074L,
2070L, 2107L, 2117L, 2128L, 2106L, 1687L, 1674L, 1664L, 1638L,
1641L, 1672L, 1679L, 1677L, 1675L, 1681L, 1675L, 1665L, 1697L,
1694L, 1693L, 1693L, 1691L, 1703L, 1706L, 1700L, 1695L, 1698L,
1712L, 1688L, 1701L, 1693L, 1674L, 1690L, 1688L, 1710L, 1711L,
1692L, 1688L, 1700L, 1684L, 1755L, 1744L, 1764L, 1762L, 1753L,
1753L, 1768L, 1763L, 1788L)), class = "data.frame", row.names = c(NA,
-63L))
以下是我在只有一列时计算 RMSE 值的方法。我试图一次拥有两个测试版,而不是多次运行相同的代码。
beta<-seq(.05,.9,by=0.001)
RMSE<-NULL
for (i in seq_along(beta)){
fit<-holt(cretrain, beta=beta[i],h = length(cretest))
RMSE[i]<-accuracy(fit,cretest)[2,2]
}
beta.fit<-data_frame(beta,RMSE)
beta.min<-filter(beta.fit,RMSE==min(RMSE))
我正在尝试为每列获取最佳 beta.min 并将其用于 Holt 预测。任何建议表示赞赏!
解决方案
推荐阅读
- postgresql - 字段的长度对于正则表达式查找是否重要?索引是否有助于加快正则表达式查询?
- ruby-on-rails - 无法在 bitbucket 上使用 ssh 进行连接
- awk - 编写好的 awk begin 标头的问题
- android - lsetfilecon 失败:传输端点不支持操作
- javascript - antd PageHeader 样式未加载到我的 React 组件中
- python - conda 4.8.3 无法安装包、创建新环境或更新
- java - 在码头启用 GZIP(使用 maven-jetty-plugin)
- javascript - rejects.toThrow in Jest
- python - 过滤很多词
- pandas - seaborn中的列式热图