r - 在 r 中找到两个不同列表的 rmse 等?
问题描述
我有两个不同的数据,它们由如下列表组成。我想计算obs和sim的每个元素之间的RMSE。
obs<-structure(list(Jan = structure(c(1.37, 0), .Names = c("v1",
"v2")), Feb = structure(c(0, 0.29), .Names = c("v1",
"v2")), Mar = structure(c(0, 0.25), .Names = c("v1",
"v2"))), .Names = c("Jan", "Feb", "Mar"))
sim<-structure(list(Jan = structure(c(6.5, 0.5), .Names = c("v1",
"v2")), Feb = structure(c(0, 5.5), .Names = c("v1",
"v2")), Mar = structure(c(0.5, 0), .Names = c("v1",
"v2"))), .Names = c("Jan", "Feb", "Mar"))
所需的输出将如下所示:
library(Metrics)
r1<-rmse(obs$Jan,sim$Jan)
r2<-rmse(obs$Feb,sim$Feb)
r3<-rmse(obs$Mar,sim$Mar)
out<-list(r1,r2,r3)
解决方案
你可以简单地做:
Map(rmse, obs, sim)
$Jan
[1] 3.644647
$Feb
[1] 3.684026
$Mar
[1] 0.3952847
推荐阅读
- swift - Swift - 如何垂直转换(翻转)自定义 UITableViewRowAction
- java - 从 Spring Boot 应用程序启动 jar 应用程序
- java - 为什么我的程序会更改布尔值?
- go - GitHub App 身份验证问题:无法刷新安装 ID 令牌
- reactjs - LEAFLET GEOMAN - 拾取这个多边形画中的坐标
- java - 如何使用 HtmlUnit 登录 wordpress.com?
- excel - 使用带有嵌入式 if 语句的 target.address 检查多个单元格位置
- multithreading - 异步执行长时间运行的逻辑
- mod-rewrite - Apache mod_rewrite - 优先级不起作用?
- json - 试图在 ruby 中加载这个 json 文件。Json 解析器错误