返回根据一些非零概率加权的值

问题描述

我正在尝试实现一个函数,该函数以特定的概率返回一些预定义的值。

对于知道Python的NumPy模块的人来说,我想我想知道JavaScript中是否有与numpy.random.choice()等效的东西?

如果没有,还有人可以如何有效地做到这一点? 这是我的代码

    // outcomes
    const max_outcome = 10;
    const min_outcome = -10;
    let x1 = Math.floor(Math.random() * (max_outcome - min_outcome + 1) + min_outcome);
    let y1 = Math.floor(Math.random() * (max_outcome - min_outcome + 1) + min_outcome);

    // probabilities
    const max_proba = 1;
    const min_proba = 0.5;
    let p1 = Math.random() * (max_proba - min_proba) + min_proba;
    p1 = Math.round(p1 * 100) / 100;
    let p2 = 1 - p1;
    p2 = Math.round(p2 * 100) / 100;

  function return_value(x1,y1,p1,p2) {
     // should randomly return x1 with p1 probability or y1 or p2 probability}

任何想法都将得到感激。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)