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.
gm — Distribución de mixtura gaussiana objeto gmdistribution
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 — Número de variables aleatorias 1 (predeterminado) | entero positivo
Número de variables aleatorias que se desea generar, especificado como un número entero positivo.
Y — Variable aleatoria Vector numérico de m por 1 | Matriz numérica de n por m
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.
compIdx — Índice de componentes entero positivo | Vector numérico de n por 1
Í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 can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.