Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

mvnpdf

Función de densidad de probabilidad normal multivariada

Descripción

ejemplo

y = mvnpdf(X) Devuelve un-por-vector que contiene la función de densidad de probabilidad (pdf) de la distribución normal multivariada dimensional con media cero y matriz de covarianza de identidad, evaluada en cada fila de la matriz.n1ydndX Para obtener más información, consulte.Distribución normal multivariada

ejemplo

y = mvnpdf(X,mu) devuelve valores PDF de puntos en, donde determina la media de cada distribución normal multivariada asociada.Xmu

ejemplo

y = mvnpdf(X,mu,sigma) devuelve valores PDF de puntos en, donde determina la covarianza de cada distribución normal multivariada asociada.Xsigma

Especifique para utilizar su valor predeterminado de cero cuando desee especificar sólo.[]musigma

Ejemplos

contraer todo

Evalúe el PDF de una distribución normal de cinco dimensiones estándar en un conjunto de puntos aleatorios.

Muestra aleatoriamente ocho puntos de la distribución normal de cinco dimensiones estándar.

mu = zeros(1,5); sigma = eye(5); rng('default')  % For reproducibility X = mvnrnd(mu,sigma,8)
X = 8×5

    0.5377    3.5784   -0.1241    0.4889   -1.0689
    1.8339    2.7694    1.4897    1.0347   -0.8095
   -2.2588   -1.3499    1.4090    0.7269   -2.9443
    0.8622    3.0349    1.4172   -0.3034    1.4384
    0.3188    0.7254    0.6715    0.2939    0.3252
   -1.3077   -0.0631   -1.2075   -0.7873   -0.7549
   -0.4336    0.7147    0.7172    0.8884    1.3703
    0.3426   -0.2050    1.6302   -1.1471   -1.7115

Evalúe el PDF de la distribución en los puntos en.X

y = mvnpdf(X)
y = 8×1

    0.0000
    0.0000
    0.0000
    0.0000
    0.0054
    0.0011
    0.0015
    0.0003

Encuentre el punto con el mayor valor PDF.X

[maxpdf,idx] = max(y)
maxpdf = 0.0054 
idx = 5 
maxPoint = X(idx,:)
maxPoint = 1×5

    0.3188    0.7254    0.6715    0.2939    0.3252

El quinto punto en tiene un valor PDF mayor que cualquiera de los otros puntos seleccionados aleatoriamente.X

Cree distribuciones normales de 6 3 dimensiones, cada una con una media diferenciada. Evalúe el PDF de cada distribución en un punto aleatorio diferente.

Especifique los medios y las covarianzas de las distribuciones.musigma Cada distribución tiene la misma matriz de covarianza: la matriz de identidad.

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

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

sigma = eye(3)
sigma = 3×3

     1     0     0
     0     1     0
     0     0     1

Muestrear aleatoriamente una vez de cada una de las seis distribuciones.

rng('default')  % For reproducibility X = mvnrnd(mu,sigma)
X = 6×3

    1.5377    0.5664    1.7254
    3.8339    2.3426    1.9369
    0.7412    6.5784    3.7147
    4.8622    6.7694    3.7950
    5.3188    3.6501    4.8759
    4.6923    9.0349    7.4897

Evalúe los archivos PDF de las distribuciones en los puntos en.X El PDF de la primera distribución se evalúa en el punto, el PDF de la segunda distribución se evalúa en el punto, y así sucesivamente.X(1,:)X(2,:)

y = mvnpdf(X,mu)
y = 6×1

    0.0384
    0.0111
    0.0000
    0.0009
    0.0241
    0.0001

Evalúe el PDF de una distribución normal bidimensional en un conjunto de puntos dados.

Especifique la media y la covarianza de la distribución.musigma

mu = [1 -1]; sigma = [0.9 0.4; 0.4 0.3];

Muestra aleatoria de la distribución 100 veces. Especifique como la matriz de puntos muestreados.X

rng('default')  % For reproducibility X = mvnrnd(mu,sigma,100);

Evalúe el PDF de la distribución en los puntos en.X

y = mvnpdf(X,mu,sigma);

Graficar los valores de densidad de probabilidad.

scatter3(X(:,1),X(:,2),y) xlabel('X1') ylabel('X2') zlabel('Probability Density')

Cree diez distribuciones normales de cinco dimensiones diferentes y compare los valores de sus archivos PDF en un punto especificado.

Establezca las cotas e iguales a 10 y 5, respectivamente.nd

n = 10; d = 5;

Especifique los medios y las covarianzas de las distribuciones normales multivariadas.musigma Deje que todas las distribuciones tengan el mismo vector medio, pero varíe las matrices de covarianza.

mu = ones(1,d)
mu = 1×5

     1     1     1     1     1

mat = eye(d); nMat = repmat(mat,1,1,n); var = reshape(1:n,1,1,n); sigma = nMat.*var;

Visualice las dos primeras matrices de covarianza en.sigma

sigma(:,:,1:2)
ans =  ans(:,:,1) =       1     0     0     0     0      0     1     0     0     0      0     0     1     0     0      0     0     0     1     0      0     0     0     0     1   ans(:,:,2) =       2     0     0     0     0      0     2     0     0     0      0     0     2     0     0      0     0     0     2     0      0     0     0     0     2  

Se establece para ser un punto aleatorio en el espacio de cinco dimensiones.x

rng('default')  % For reproducibility x = normrnd(0,1,1,5)
x = 1×5

    0.5377    1.8339   -2.2588    0.8622    0.3188

Evalúe el PDF para cada una de las diez distribuciones.x

y = mvnpdf(x,mu,sigma)
y = 10×1
10-4 ×

    0.2490
    0.8867
    0.8755
    0.7035
    0.5438
    0.4211
    0.3305
    0.2635
    0.2134
    0.1753

Graficar los resultados.

scatter(1:n,y,'filled') xlabel('Distribution Index') ylabel('Probability Density at x')

Argumentos de entrada

contraer todo

Puntos de evaluación, especificados como un vector numérico o una matriz numérica, donde es un entero escalar positivo y es la dimensión de una única distribución normal multivariada.1dndnd Las filas de corresponden a observaciones (o puntos), y las columnas corresponden a variables (o coordenadas).X

Si es un vector, a continuación, se replica para que coincida con la dimensión inicial o la dimensión final de.Xmvnpdfmusigma

Tipos de datos: single | double

Medios de distribuciones normales multivariadas, especificadas como un vector numérico o una matriz numérica.1dnd

  • Si es un vector, a continuación, replica el vector para que coincida con la dimensión final de.mumvnpdfsigma

  • Si es una matriz, cada fila de es el vector medio de una única distribución normal multivariada.mumu

Tipos de datos: single | double

Covarianzas de distribuciones normales multivariadas, especificadas como una matriz definida a-simétrica, positiva o a-por--numérico.ddddn

  • Si es una matriz, a continuación, replica la matriz para que coincida con el número de filas.sigmamvnpdfmu

  • Si es una matriz, entonces cada página de,, es la matriz de covarianza de una única distribución normal multivariada y, por lo tanto, es una matriz definida simétrica y positiva.sigmasigmasigma(:,:,i)

Si las matrices de covarianza son diagonales, conteniendo desviaciones a lo largo de la diagonal y cero covarianzas fuera de ella, entonces también puede especificar como a-por-vector o a-por--array conteniendo sólo las entradas diagonales.sigma1d1dn

Tipos de datos: single | double

Argumentos de salida

contraer todo

valores PDF, devueltos como un vector numérico, donde se encuentra uno de los siguientes:n1n

  • Número de filas en si es una matrizXX

  • El número de veces se replica si es un vectorXX

Si es una matriz, es una matriz, y es una matriz, a continuación, calcula utilizando, y.Xmusigmamvnpdfy(i)X(i,:)mu(i,:)sigma(:,:,i)

Tipos de datos: double

Más acerca de

contraer todo

Distribución normal multivariada

La distribución normal multivariada es una generalización de la distribución normal univariada a dos o más variables. Tiene dos parámetros, un vector medio y una matriz de covarianza, que son análogos a los parámetros de media y varianza de una distribución normal univariada.μΣ Los elementos diagonales de contienen las varianzas para cada variable, y los elementos fuera de la diagonal de contienen las covarianzas entre las variables.ΣΣ

La función de densidad de probabilidad (pdf) de la distribución normal multivariada dimensional esd

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

donde y son 1 por vectores y es un-por-simétrico, matriz definida positiva.xμdΣdd Sólo permite matrices semi-definidas positivas, que pueden ser singulares.mvnrndΣ El PDF no puede tener la misma forma cuando es singular.Σ

La función de distribución acumulativa normal multivariada (CDF) evaluada en es la probabilidad de que un vector aleatorio, distribuido como normal multivariada, se encuentra dentro del rectángulo semi-infinito con límites superiores definidos por:xvx

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

Aunque el CDF normal multivariado no tiene un formulario cerrado, puede calcular valores CDF numéricamente.mvncdf

Sugerencias

  • En el caso unidimensional, es la varianza, no la desviación estándar.sigma Por ejemplo, es el mismo que, donde está la varianza y es la desviación estándar.mvnpdf(1,0,4)normpdf(1,0,2)42

Referencias

[1] Kotz, S., N. Balakrishnan, and N. L. Johnson. Continuous Multivariate Distributions: Volume 1: Models and Applications. 2nd ed. New York: John Wiley & Sons, Inc., 2000.

Capacidades ampliadas

Generación de código C/C++
Genere código C y C++ mediante MATLAB® Coder™.

Introducido antes de R2006a