mvnrnd

Многомерные нормальные случайные числа

Синтаксис

R = mvnrnd(mu,sigma,n)
R = mvnrnd(mu,sigma)

Описание

пример

R = mvnrnd(mu,sigma,n) возвращает матричный R n случайные векторы, выбранные из того же многомерного нормального распределения, со средним векторным mu и ковариационной матрицей sigma. Для получения дополнительной информации смотрите Многомерное Нормальное распределение.

пример

R = mvnrnd(mu,sigma) возвращает m-by-d, матричный R случайных векторов, выбранных от m, разделяют d - размерные многомерные нормальные распределения, со средними значениями и ковариациями, заданными mu и sigma, соответственно. Каждая строка R является одним многомерным нормальным случайным вектором.

Примеры

свернуть все

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

Задайте mu и sigma, и сгенерируйте 100 случайных чисел.

mu = [2 3];
sigma = [1 1.5; 1.5 3];
rng('default')  % For reproducibility
R = mvnrnd(mu,sigma,100);

Постройте случайные числа.

plot(R(:,1),R(:,2),'+')

Случайным образом демонстрационный от пяти различных 3D нормальных распределений.

Задайте средние значения mu и ковариации sigma дистрибутивов. Позвольте всем дистрибутивам совместно использовать ту же ковариационную матрицу, но отличаться средние векторы.

firstDim = (1:5)';
mu = repmat(firstDim,1,3)
mu = 5×3

     1     1     1
     2     2     2
     3     3     3
     4     4     4
     5     5     5

sigma = eye(3)
sigma = 3×3

     1     0     0
     0     1     0
     0     0     1

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

rng('default')  % For reproducibility
R = mvnrnd(mu,sigma)
R = 5×3

    1.5377   -0.3077   -0.3499
    3.8339    1.5664    5.0349
    0.7412    3.3426    3.7254
    4.8622    7.5784    3.9369
    5.3188    7.7694    5.7147

Постройте график результатов.

scatter3(R(:,1),R(:,2),R(:,3))

Входные параметры

свернуть все

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

  • Если mu является вектором, то mvnrnd реплицирует вектор, чтобы совпадать с последующим измерением sigma.

  • Если mu является матрицей, то каждая строка mu является средним вектором одного многомерного нормального распределения.

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

Ковариации многомерных нормальных распределений, заданных как d-by-d симметричная, положительная полуопределенная матрица или d-by-d-by-m числовой массив.

  • Если sigma является матрицей, то mvnrnd реплицирует матрицу, чтобы совпадать с количеством строк в mu.

  • Если sigma является массивом, то каждая страница sigma, sigma(:,:,i), является ковариационной матрицей одного многомерного нормального распределения и, поэтому, является симметричной, положительной полуопределенной матрицей.

Если ковариационные матрицы являются диагональными, содержа отклонения вдоль диагональных и нулевых ковариаций от него, то можно также задать sigma как 1-by-d вектор или 1-by-d-by-m массив, содержащий только диагональные элементы.

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

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

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

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

свернуть все

Многомерные нормальные случайные числа, возвращенные как одно из следующего:

  • m-by-d числовая матрица, где m и d являются размерностями, заданными mu и sigma

  • n-by-d числовая матрица, где n является заданным входным параметром и d, является размерностью, заданной mu и sigma

Если mu является матрицей, и sigma является массивом, то mvnrnd вычисляет R(i,:) с помощью mu(i,:) и sigma(:,:,i).

Больше о

свернуть все

Многомерное нормальное распределение

Многомерное нормальное распределение является обобщением одномерного нормального распределения к двум или больше переменным. Это имеет два параметра, средний векторный μ и ковариационную матрицу Σ, которые походят на среднее значение и параметры отклонения одномерного нормального распределения. Диагональные элементы Σ содержат отклонения для каждой переменной, и недиагональные элементы Σ содержат ковариации между переменными.

Функция плотности вероятности (PDF) d - размерное многомерное нормальное распределение

y = f(x,μ,Σ)  = 1|Σ|(2π)dexp(12(x-μΣ-1(x-μ)')

где x и μ 1 d векторами, и Σ является d-by-d симметричная, положительная определенная матрица. Только mvnrnd позволяет положительные полуопределенные матрицы Σ, которые могут быть сингулярными. PDF не может иметь той же формы, когда Σ сингулярен.

Многомерная нормальная кумулятивная функция распределения (cdf) оцененный в x является вероятностью, что случайный векторный v, распределенный как многомерный нормальный, находится в полубесконечном прямоугольнике с верхними пределами, заданными x:

PR{v(1)x(1),v(2)x(2),...,v(d)x(d)}.

Несмотря на то, что многомерный нормальный cdf не имеет закрытой формы, mvncdf может вычислить cdf значения численно.

Советы

  • mvnrnd требует, чтобы матричный sigma был симметричен. Если sigma имеет только незначительную асимметрию, можно использовать (sigma + sigma')/2 вместо этого, чтобы разрешить асимметрию.

  • В одномерном случае sigma является отклонением, не стандартным отклонением. Например, mvnrnd(0,4) совпадает с normrnd(0,2), где 4 является отклонением, и 2 является стандартным отклонением.

Ссылки

[1] Kotz, S., Н. Бэлэкришнэн и Н. Л. Джонсон. Непрерывные Многомерные Дистрибутивы: Объем 1: Модели и Приложения. 2-й редактор Нью-Йорк: John Wiley & Sons, Inc., 2000.

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

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

Для просмотра документации необходимо авторизоваться на сайте