我正在做预测模型的误差分析,我需要计算全局误差,这就是说,我需要计算间接测量误差传播产生的误差。我的数据"df“看起来像这样

其中'x‘和'y’是测量变量,'x_se‘和'y_se’是这些测量的标准误差
我对第一行使用了来自包'qpcR‘的'propagate’函数
EXPR <- expression((0.1*x)*(y/(y+0.1)))
x <- c(1.43, 2)
y <- c(0.64, 0.09)
DF <- cbind(x, y)
res <- propagate(expr = EXPR, data = DF, type = "stat",do.sim = TRUE, verbose = TRUE)
res$summary或者来自包'metRology‘的这个
expr <- expression((0.1*a)*(b/(b+0.1)))
x <- list(a=1.43, b=0.64)
u <- list(2,0.1)
u.expr<-uncert(expr, x, u, method="MC",B=200)
u.expr这两个函数都可以工作,但我不知道如何将这些函数中的任何一个应用于整个df。谢谢你的帮忙
发布于 2020-07-16 16:26:59
这是获取数据帧每一行的res$summary的一种可能的解决方案。
您首先创建一个自定义函数my_fun,该函数执行您试图对数据帧的单行执行的操作。然后,将该函数apply到数据帧的每一行。最终结果将是一个具有与数据帧行数相同的元素的list。
my_fun <- function(r){
EXPR <- expression((0.1 * x) * (y / (y + 0.1)))
x <- c(r[["x"]], r[["x_se"]])
y <- c(r[["y"]], r[["y_se"]])
DF <- cbind(x, y)
res <- propagate(expr = EXPR, data = DF, type = "stat", do.sim = TRUE, verbose = TRUE)
return(res$summary)
}
set.seed(1)
apply(df, 1, my_fun)输出
[[1]]
Sim Perm Prop
Mean 0.1233798 NaN 0.1233898
Std.dev. 0.1726114 NA 0.1730206
Median 0.1234929 NA NA
MAD 0.1708902 NA NA
Conf.lower -0.2153721 NA -0.2157244
Conf.upper 0.4686238 NA 0.4625041
[[2]]
Sim Perm Prop
Mean 0.1849104 NaN 0.1849310
Std.dev. 0.1645677 NA 0.1650419
Median 0.1851380 NA NA
MAD 0.1652076 NA NA
Conf.lower -0.1401244 NA -0.1385452
Conf.upper 0.5155102 NA 0.5084072
[[3]]
Sim Perm Prop
Mean 0.2070037 NaN 0.2070098
Std.dev. 0.1754712 NA 0.1756395
Median 0.2057387 NA NA
MAD 0.1768489 NA NA
Conf.lower -0.1308923 NA -0.1372374
Conf.upper 0.5528197 NA 0.5512569
[[4]]
Sim Perm Prop
Mean 0.1766511 NaN 0.1766596
Std.dev. 0.1723788 NA 0.1726441
Median 0.1744966 NA NA
MAD 0.1736575 NA NA
Conf.lower -0.1552201 NA -0.1617167
Conf.upper 0.5203006 NA 0.5150359
[[5]]
Sim Perm Prop
Mean 0.1384704 NaN 0.1384753
Std.dev. 0.1798246 NA 0.1800144
Median 0.1376255 NA NA
MAD 0.1782177 NA NA
Conf.lower -0.2151249 NA -0.2143465
Conf.upper 0.4946514 NA 0.4912970
[[6]]
Sim Perm Prop
Mean 0.1182867 NaN 0.1182874
Std.dev. 0.1805740 NA 0.1807828
Median 0.1184392 NA NA
MAD 0.1805303 NA NA
Conf.lower -0.2378475 NA -0.2360404
Conf.upper 0.4731363 NA 0.4726152
[[7]]
Sim Perm Prop
Mean 0.1287621 NaN 0.1287730
Std.dev. 0.1740355 NA 0.1743982
Median 0.1256472 NA NA
MAD 0.1740543 NA NA
Conf.lower -0.2106699 NA -0.2130411
Conf.upper 0.4720430 NA 0.4705872https://stackoverflow.com/questions/62929735
复制相似问题