查找 beta 和正态分布之间的交集

Posted

技术标签:

【中文标题】查找 beta 和正态分布之间的交集【英文标题】:Find intersection between a beta and a normal distribution 【发布时间】:2014-06-17 05:26:54 【问题描述】:

我有 2 个分布 - 1 个 beta 和 1 个正态分布,我需要找到它们的 pdf 的交集。我知道两者的参数,并且能够直观地看到交叉点,但我正在寻找 R 计算确切点的方法。有人知道如何做到这一点吗?

【问题讨论】:

【参考方案1】:

使用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 字段为您提供答案(或多或少准确)。

【讨论】:

感谢您的回复!这可能是一个愚蠢的问题,但我应该为 x 输入一些东西吗?我使用我的参数尝试了上面的代码,当我期待大约 0.6 的值时,我得到了 2.710505e-20 的答案。是否有可能有多个交叉点,而这只给出了第一个? 2.71e020 实际上等于 0。你的参数是什么?如果您确定它在 0.6 左右,您可能希望寻找解决方案,例如在区间 [0.5,0.7] 内。顺便说一句,x 可以,它是一个变量,用于搜索解决方案。 是的,我只需要将区间从 c(0,1) 更改为 c(.2,.8) 并得到 0.58 的答案。感谢您的帮助!

以上是关于查找 beta 和正态分布之间的交集的主要内容,如果未能解决你的问题,请参考以下文章

二项分布 , 多项分布, 以及与之对应的beta分布和狄利克雷分布

python求beta分布的分位数

Beta分布

二元变量(伯努利分布二项式分布以及Beta分布)

R可视化beta分布(Beta Distribution)

python中的转换beta回归