这可能很快。
我无法在R中找到数学“错误函数”或“反向错误函数”的函数。我也没有看过包。
我知道我可以编写脚本,但我认为有人必须已经为其各种近似创建了一个包。由于通用术语“错误功能”......可能是糟糕的谷歌搜索...
答案 0 :(得分:29)
这些与pnorm()
和qnorm()
密切相关:请参阅?pnorm
中示例代码的最后4行:
## if you want the so-called 'error function'
erf <- function(x) 2 * pnorm(x * sqrt(2)) - 1
## (see Abramowitz and Stegun 29.2.29)
## and the so-called 'complementary error function'
erfc <- function(x) 2 * pnorm(x * sqrt(2), lower = FALSE)
## and the inverses
erfinv <- function (x) qnorm((1 + x)/2)/sqrt(2)
erfcinv <- function (x) qnorm(x/2, lower = FALSE)/sqrt(2)
如果您想使用复数值参数,则需要erfz
包中的pracma
(如上文@ eipi10所述)。否则,不清楚使用pracma
中的版本是否有优势(pnorm()
和qnorm()
的实现已在各种参数值上进行了彻底的测试......)
就搜索而言,
library("sos")
findFn("erf")
似乎工作得很好......