我有2个发行版 - 1个beta版和1个普通版,我需要找到他们的pdf的交集。我知道两者的参数,并且能够直观地看到交叉点,但我正在寻找R计算精确点的方法。任何人都知道如何做到这一点?
答案 0 :(得分:5)
使用uniroot()
。
uniroot(function(x) dbeta(x, 1, 2)-dnorm(x, 0, 1), c(0, 1))
## $root
## [1] 0.862456
##
## $f.root
## [1] 5.220165e-05
##
## $iter
## [1] 3
##
## $estim.prec
## [1] 6.103516e-05
这解决了等式dbeta(x, ...) == dnorm(x, ...)
w.r.t. x
(在inverval [0,1]中,因为这是beta分布的支持),即找到dbeta(x, ...) - dnorm(x, ...)
的根。结果列表的root
字段为您提供答案(或多或少)。