使用软件包“BSDA”中的曲线下面积执行数学运算

Perform mathematical operations with the area under the curve from package ‘BSDA’

我有以下代码来计算曲线下的面积:

library("BSDA")
normarea(0, 9.9, 10.5, 1.3)

我的objective是用"area under the curve"的值进行数学运算,在本例中是0.3222。

具体来说,我希望能够做到这一点:

p<-normarea(0, 9.9, 10.5, 1.3)
q<-p*100
q
32.22

问题是当我实现该代码时出现此错误:

Error in p * 100 : non-numeric argument to binary operator

我的问题是:如何从 normarea 的输出中提取数字部分?

如有任何想法,我将不胜感激。

normarea只是绘制一定区间内曲线下的面积;它没有 return 区域,请参阅 ?normarea

但是,执行normarea让你看到函数的源代码;使用 pnorm 作为

简单地计算面积
area <- pnorm(upper, m, sig) - pnorm(lower, m, sig)

所以在你的情况下,让我们定义一个函数来 return 区域

area_norm <- function(lower, upper, m, sig) {
    pnorm(upper, m, sig) - pnorm(lower, m, sig)
}

然后

area_norm(0, 9.9, 10.5 1.3);
#[1] 0.3222062