如何在Perl中给出正态分布的点计算概率?

nev*_*int 3 statistics perl r probability

Perl中是否有一个包允许您计算每个给定点的概率分布高度.例如,这可以通过以下方式完成:

> dnorm(0, mean=4,sd=10)
> 0.03682701
Run Code Online (Sandbox Code Playgroud)

即,点x = 0的概率落入正态分布,均值= 4且sd = 10,为0.0368.我查看了Statistics :: Distribution,但它没有给出这样的功能.

Dir*_*tel 8

dnorm(0,平均= 4,SD = 10)并没有给你THR这样的点发生的概率.引用维基百科的概率密度函数

在概率论中,概率密度函数(pdf) - 被称为随机变量的概率分布函数1-或密度,是描述样本空间中每个点处的概率密度的函数.随机变量落入给定集合的概率由其在集合上的密度的积分给出.

你提到的概率是

R> pnorm(0, 4, 10)
[1] 0.3446
Run Code Online (Sandbox Code Playgroud)

或者从N(4,10)分布中获得等于或小于0的值的概率为34.46%.

至于你的Perl问题:如果你知道如何在R中完成它,但需要它来自Perl,也许你需要编写一个基于R的libRmath的Perl扩展(由Debian由r-mathlib包提供)来获取这些函数Perl的?这不需要R解释器.

否则,您可以尝试使用GNU GSL或Cephes库来访问这些特殊功能.

  • Statistics :: Distributions中的分布函数(如pnorm)是uprob.1-uprob((0-4)/ 10)应该给你~0.34(我没有安装它来确认这一点.)但是我没有密度功能. (2认同)