偏斜正态分布中的随机数(相当于NORMINV())

时间:2015-09-29 02:46:26

标签: excel statistics distribution

我正在尝试使用偏斜正态分布创建偏斜随机数生成器,但我不知道如何将我的公式(使用NORMDIST())转换为基于NORMINV()的公式这可以生成我想要的数字。这是我的公式:

=2/s * NORMDIST((x-m)/s, 0, 1, 0) * NORMSDIST(k*(x-m)/s)

其中“x”是数字,“s”是比例,“m”是位置,“k”是形状。我承认我找到了公式online,但似乎做了我想做的事,除了错误的方法。

我该怎么做?

1 个答案:

答案 0 :(得分:2)

Adelchi Azzalini关于如何生成具有偏斜正态(SN)分布的伪随机数有一个page。在这里从页面:

SN random numbers

步骤1中的N(0,1)变量u0和v可以在Excel中计算为NORMINV(RAND(),0,1)。并且以形状参数α表示的δ是δ = α/SQRT(1+α*α)

注意:Python的SciPy正在获取偏斜正态随机变量(scipy.stats.skewnorm),请参阅SciPy 0.18.0rc2代码中的heredocs引用了Azzalini和Capitanio的论文以及我在上面引用的相同页面。