我有 1000 个均匀分布的随机数。如何操作它们以获得 V 形直方图?
如何从均匀分布的数字中获得“V 形”分布的随机数?
机器算法验证
分布
数据转换
随机生成
2022-04-05 18:35:34
4个回答
搜索“变换方法”或“逆变换方法”,这是一种生成具有任意分布的随机数的方法。你会发现很多讲义描述了这个想法。这是维基百科页面:逆变换采样。它在底部有更详细资源的链接。
基本结果是这个配方:如果你需要一些分布, 然后
- 找到它的 CDF 并将其反转。
- 生成 0 到 1 之间的均匀分布的随机数
- 用逆 CDF 变换这些数字以获得根据
不能对每个分布进行分析计算。对于您的发行版,它可以。如果“V”的域是,那么 PDF 是, CDF 是, 逆 CDF 将是
例如,在 Mathematica

如果和是独立的均匀分布的随机变量, 然后具有金字塔或“倒 V”形分布.
要将这个金字塔变成 V 形,我们需要做的就是交换分布的两半。
因此,给定独立, 让
随机变量然后将具有您想要的 V 形分布.
这实际上应该是上述答案下方的评论。但由于我没有足够的声誉发表此评论,我将在此处发布。在您最初询问如何在“excel”中执行此操作的问题中。应该这样做,
=SIGN(2*RAND()-1)*(ABS(1-2*RAND()))^0.5
对上一个答案的一个有趣说明是,如果您使用一个均匀随机变量(两者相同)来生成 V 形分布或两个(对于符号函数和abs 函数)。
你确实想使用. 您正在寻找一种叫做概率积分变换 (PIT) 的东西。
如果然后,. 因此,首先您将找到您感兴趣的发行版的 CDF,然后您将进行转换。例如,如果你想,, 积分得到. 然后,
其它你可能感兴趣的问题