Y = random(gm,n) devuelve n variables aleatorias. Cada fila de Y es una variable aleatoria generada a partir de la distribución de mixtura gaussiana gm de dimensión m.
[Y,compIdx] = random(___) también devuelve un vector índice de n por 1 compIdx para cualquiera de los argumentos de entrada de las sintaxis anteriores. compIdx(i) indica el componente de mixtura usado para generar la i-ésima variable aleatoria Y(i,:).
Cree un objeto gmdistribution usando la función gmdistribution. De forma predeterminada, la función crea una mixtura de proporción equitativa.
gm = gmdistribution(mu,sigma)
gm =
Gaussian mixture distribution with 2 components in 2 dimensions
Component 1:
Mixing proportion: 0.500000
Mean: 1 2
Component 2:
Mixing proportion: 0.500000
Mean: -3 -5
Genere 1000 variables aleatorias.
rng('default'); % For reproducibility
[Y,compIdx] = random(gm,1000);
compIdx(i) indica el componente de mezcla usado para generar la i-ésima variable aleatoria Y(i,:). Cuente el número de variables aleatorias generadas por Component1.
numIdx1 = sum(compIdx == 1)
numIdx1 =
512
random genera cerca de la mitad de las variables aleatorias usando Component1 porque gm tiene unas proporciones de mezcla equitativas.
Represente las variables aleatorias generadas usando scatter.
scatter(Y(:,1),Y(:,2),10,'.') % Scatter plot with points of size 10
La función cat concatena las covarianzas en la dimensión del tercer arreglo. Las matrices de covarianza establecidas son matrices diagonales. sigma(1,:,i) contiene los elementos diagonales de la matriz de covarianzas del componente i.
Cree un objeto gmdistribution usando la función gmdistribution.
gm = gmdistribution(mu,sigma);
Guarde el estado actual del generador de números aleatorios y, después, genere una variable aleatoria usando gm.
s = rng;
r = random(gm)
r = 1×2
-1.1661 -7.2588
Restaure el estado del generador de números aleatorios con el valor s y, después, genere una variable aleatoria usando gm. Los valores son los mismos que antes.
Distribución de mixtura gaussiana, también llamada modelo de mixtura gaussiana (GMM), especificada como un objeto gmdistribution.
Puede crear un objeto gmdistribution usando gmdistribution o fitgmdist. Use la función gmdistribution para crear un objeto gmdistribution indicando los parámetros de distribución. Use la función fitgmdist para ajustar un modelo gmdistribution a los datos de acuerdo con un determinado número de componentes.
Número de variables aleatorias que se desea generar, especificado como un número entero positivo.
Variable aleatoria, devuelta como un vector numérico de 1 por m o una matriz numérica de n por m. Cada fila de Y es una variable aleatoria generada a partir de la distribución de mixtura gaussiana gm de dimensión m.
Índice de componentes, devuelto como un número entero positivo o un vector índice de n por 1, donde compIdx(i) indica el componente de mezcla usado para generar la i-ésima variable aleatoria Y(i,:).
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window.
Web browsers do not support MATLAB commands.
Seleccione un país/idioma
Seleccione un país/idioma para obtener contenido traducido, si está disponible, y ver eventos y ofertas de productos y servicios locales. Según su ubicación geográfica, recomendamos que seleccione: .
También puede seleccionar uno de estos países/idiomas:
Cómo obtener el mejor rendimiento
Seleccione China (en idioma chino o inglés) para obtener el mejor rendimiento. Los sitios web de otros países no están optimizados para ser accedidos desde su ubicación geográfica.