【发布时间】:2020-04-01 13:26:40
【问题描述】:
我正在尝试学习如何在 R 中使用 MetRology 包。我一直使用 GUM 手册附录 H.2 中的数据作为一个简单的示例来尝试蒙特卡罗不确定性传播,包括相关性。我有两个变量 V 和 I。因此,我有一个 2x2 相关矩阵,其中 I,V 在非对角线元素中的相关性。如果我将此矩阵提供给 uncertMC 函数,则会收到错误消息:“特征错误(Sigma,对称 = TRUE):0 x 0 矩阵”。如果我不包括相关矩阵,我不会得到错误。为什么在包含相关性时会出现错误?计量手册有一个包含四个变量和一个 4x4 相关矩阵的示例,适用于我。有什么明显的我做错了吗?
提前谢谢你!
library(errors) # for gum H.2 dataset
library(metRology) # for uncertMC
#extract relevant data
meanV <- with(GUM.H.2, mean(V))
meanI <- with(GUM.H.2, mean(I))
#uncertainties of the mean as per GUM (over sqrt(N))
uV <- with(GUM.H.2, sd(V)/sqrt(length(V)))
uI <- with(GUM.H.2, sd(I)/sqrt(length(I)))
# correlation between V and I
corIV <- with(GUM.H.2, cor(I,V))
#set up a 2 x 2 correlation matrix
u.cor <- diag(1,2)
# off-diagonal elements
u.cor[1,2] <- u.cor[2,1] <- corIV
#set up inputs for uncertMC
# the expression Z = V/I
expr <- expression(V/I)
x <- list(V= meanV, I= meanI)
u <- list(V=uV, I=uI)
u.MC <- uncertMC(expr = expr, x = x, u = u, cor = u.cor)
#errors with Error in eigen(Sigma, symmetric = TRUE) : 0 x 0 matrix
【问题讨论】:
标签: r montecarlo