You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Excel RAND函数生成按指定概率分布的随机数?

实现指定概率分布的Excel随机数生成

要生成符合你要求概率分布的随机数,核心思路是利用RAND()函数的均匀分布特性,将0-1的随机区间按给定概率划分,再映射到目标数值区间。以下是两种可行方法:

方法一:使用辅助单元格(兼容所有Excel版本)

  1. 在空白单元格(比如A1)输入基础随机数:
    =RAND()
    
  2. 在目标单元格输入以下公式,根据A1的数值判断并生成对应区间的随机数:
    =IF(A1<0.54,ROUND(1+(A1/0.54)*0.99,2),IF(A1<0.67,ROUND(2+((A1-0.54)/0.13)*0.99,2),ROUND(3+((A1-0.67)/0.33)*97,2)))
    

方法二:使用LET函数(Excel 365/2021及以上版本,无需辅助单元格)

直接在目标单元格输入公式,通过LET函数存储单次随机值,避免多次随机导致的逻辑偏差:

=LET(
    r, RAND(),
    IF(
        r < 0.54,
        ROUND(1 + (r / 0.54) * 0.99, 2),
        IF(
            r < 0.67,
            ROUND(2 + ((r - 0.54) / 0.13) * 0.99, 2),
            ROUND(3 + ((r - 0.67) / 0.33) * 97, 2)
        )
    )
)

公式说明

  • 首先生成0-1之间的随机数r,按概率划分区间:
    • r < 0.54(对应54%概率):映射到1.00-1.99区间,通过比例计算保证区间内数值均匀分布,最后用ROUND保留两位小数。
    • 0.54 ≤ r < 0.67(对应13%概率):映射到2.00-2.99区间。
    • r ≥ 0.67(对应33%概率):映射到3.00-100.00区间。
  • 按F9可刷新所有随机数。

内容的提问来源于stack exchange,提问作者Riley Miller

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 00:50:05