exponenta event banner

normrnd

Обычные случайные числа

Описание

пример

r = normrnd(mu,sigma) генерирует случайное число из нормального распределения со средним параметром mu и параметр стандартного отклонения sigma.

r = normrnd(mu,sigma,sz1,...,szN) генерирует массив нормальных случайных чисел, где sz1,...,szN указывает размер каждого размера.

пример

r = normrnd(mu,sigma,sz) генерирует массив нормальных случайных чисел, где вектор sz определяет size(r).

Примеры

свернуть все

Создайте одно случайное значение из стандартного нормального распределения.

rng('default') % For reproducibility
r = normrnd(0,1)
r = 0.5377

Сохранение текущего состояния генератора случайных чисел. Затем создайте вектор 1 на 5 нормальных случайных чисел из нормального распределения со средним значением 3 и стандартным отклонением 10.

s = rng;
r = normrnd(3,10,[1,5])
r = 1×5

    8.3767   21.3389  -19.5885   11.6217    6.1877

Восстановление состояния генератора случайных чисел в s, а затем создать новый вектор 1 на 5 случайных чисел. Значения те же, что и ранее.

rng(s);
r1 = normrnd(3,10,[1,5])
r1 = 1×5

    8.3767   21.3389  -19.5885   11.6217    6.1877

Создайте матрицу из нормально распределенных случайных чисел того же размера, что и существующий массив.

A = [3 2; -2 1];
sz = size(A);
R = normrnd(0,1,sz)
R = 2×2

    0.5377   -2.2588
    1.8339    0.8622

Предыдущие две строки кода можно объединить в одну строку.

R = normrnd(1,0,size(A));

Входные аргументы

свернуть все

Среднее нормальное распределение, указанное как скалярное значение или массив скалярных значений.

Чтобы создать случайные числа из нескольких распределений, укажите mu и sigma с использованием массивов. Если оба mu и sigma являются массивами, тогда размеры массивов должны быть одинаковыми. Если либо mu или sigma является скаляром, то normrnd расширяет скалярный аргумент в постоянный массив того же размера, что и другой аргумент. Каждый элемент в r - случайное число, сгенерированное из распределения, указанного соответствующими элементами в mu и sigma.

Пример: [0 1 2; 0 1 2]

Типы данных: single | double

Стандартное отклонение нормального распределения, определяемое как неотрицательное скалярное значение или массив неотрицательных скалярных значений.

Если sigma равно нулю, то выход r всегда равно mu.

Чтобы создать случайные числа из нескольких распределений, укажите mu и sigma с использованием массивов. Если оба mu и sigma являются массивами, тогда размеры массивов должны быть одинаковыми. Если либо mu или sigma является скаляром, то normrnd расширяет скалярный аргумент в постоянный массив того же размера, что и другой аргумент. Каждый элемент в r - случайное число, сгенерированное из распределения, указанного соответствующими элементами в mu и sigma.

Пример: [1 1 1; 2 2 2]

Типы данных: single | double

Размер каждого измерения, указанный как целые числа. Например, указание 5,3,2 генерирует массив случайных чисел 5 на 3 на 2 из распределения вероятностей.

Если либо mu или sigma является массивом, то указанные размеры sz1,...,szN должны соответствовать общим измерениям mu и sigma после любого необходимого скалярного расширения. Значения по умолчанию для sz1,...,szN являются общими измерениями.

  • Если указано одно значение sz1, то r - квадратная матрица размера sz1около-sz1.

  • Если размер любого размера равен 0 или отрицательный, то r является пустым массивом.

  • За пределами второго измерения normrnd игнорирует конечные размеры размером 1. Например, указание 3,1,1,1 создает вектор случайных чисел 3 на 1.

Пример: 5,3,2

Типы данных: single | double

Размер каждого измерения, заданный как вектор строки целых чисел. Например, указание [5,3,2] генерирует массив случайных чисел 5 на 3 на 2 из распределения вероятностей.

Если либо mu или sigma является массивом, то указанные размеры sz должны соответствовать общим измерениям mu и sigma после любого необходимого скалярного расширения. Значения по умолчанию для sz являются общими измерениями.

  • Если указано одно значение [sz1], то r - квадратная матрица размера sz1около-sz1.

  • Если размер любого размера равен 0 или отрицательный, то r является пустым массивом.

  • За пределами второго измерения normrnd игнорирует конечные размеры размером 1. Например, указание [3,1,1,1] создает вектор случайных чисел 3 на 1.

Пример: [5,3,2]

Типы данных: single | double

Выходные аргументы

свернуть все

Нормальные случайные числа, возвращаемые как скалярное значение или массив скалярных значений с размерами, заданными sz1,...,szN или sz. Каждый элемент в r - случайное число, сгенерированное из распределения, указанного соответствующими элементами в mu и sigma.

Альтернативная функциональность

  • normrnd - функция, специфичная для нормального распределения. Toolbox™ статистики и машинного обучения также предлагает универсальную функцию random, которая поддерживает различные распределения вероятностей. Использовать random, создайте NormalDistribution объект распределения вероятностей и передать объект в качестве входного аргумента или указать имя распределения вероятностей и его параметры. Обратите внимание, что специфичная для распределения функция normrnd быстрее, чем универсальная функция random.

  • Использовать randn для генерации случайных чисел из стандартного нормального распределения.

  • Для интерактивной генерации случайных чисел используйте randtoolпользовательский интерфейс для генерации случайных чисел.

Ссылки

[1] Марсалья, G и В. В. Цанг. «Быстрый, легко реализуемый метод выборки из убывающих или симметричных функций унимодальной плотности». Журнал СИАМ по научным и статистическим вычислениям. Том 5, номер 2, 1984, стр. 349-359.

[2] Эванс, М., Н. Гастингс и Б. Павлин. Статистические распределения. 2-й ред. Хобокен, Нью-Джерси: John Wiley & Sons, Inc., 1993.

Расширенные возможности

.
Представлен до R2006a