Генерация случайных чисел из нормального распределения с фиксированным средним, SD и диапазоном в JavaScript? - PullRequest
0 голосов
/ 09 января 2020

Из этого ответа я узнал, как сгенерировать список случайных чисел с фиксированным диапазоном, средним и средним значением. Javascript: генерировать случайные числа с фиксированным средним и стандартным отклонением , но я также изучил эту математику. random () не соответствует нормальному распределению. Моя проблема в том, можно ли создать список случайных чисел после нормального распределения с фиксированным диапазоном, средним значением и sd в JavaScript? т. е. случайным образом вытянуть 10 чисел из нормального распределения в диапазоне от 2 до 100; среднее значение должно быть 20, а sd должно быть 10?

для части нормального распределения, я попытался извлечь случайные числа (от 0 до 1) из нормального распределения, чтобы заменить Math.random ( ) функция:

function randn_normal() {
    var u = 0, v = 0;
    while (u === 0) u = Math.random(); //Converting [0,1) to (0,1)
    while (v === 0) v = Math.random();
    let num = Math.sqrt(-2.0 * Math.log(u)) * Math.cos(2.0 * Math.PI * v);
    num = num / 10.0 + 0.5; // Translate to 0 -> 1
    if (num > 1 || num < 0) return randn_normal(); // resample between 0 and 1
    return num;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...