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.

lognrnd

Los números aleatorios lognormal

Descripción

ejemplo

r = lognrnd(mu,sigma) genera un número aleatorio a partir de la distribución lognormal con los parámetros de distribución (media de valores logarítmicos) y (desviación estándar de valores logarítmicos).musigma

ejemplo

r = lognrnd(mu,sigma,sz1,...,szN) O r = lognrnd(mu,sigma,[sz1,...,szN]) genera un-por-⋯-por-array de números aleatorios lognormal.sz1szN

Ejemplos

contraer todo

Encuentre los parámetros de distribución de la media y la varianza de una distribución lognormal y genere un valor aleatorio lognormal de la distribución.

Encuentre los parámetros de distribución y de la media y la varianza.musigma

m = 1; % mean v = 2; % variance mu = log((m^2)/sqrt(v+m^2))
mu = -0.5493 
sigma = sqrt(log(v/(m^2)+1))
sigma = 1.0481 

Genere un valor aleatorio lognormal.

rng('default') % For reproducibility r = lognrnd(mu,sigma)
r = 1.0144 

Guarde el estado actual del generador de números aleatorios. A continuación, cree un vector de 1 por 5 de números aleatorios lognormal de la distribución lognormal con los parámetros 3 y 10.

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

    0.0000    1.8507    0.0000    0.0001    0.0000

Restaure el estado del generador de números aleatorios a y, a continuación, cree un nuevo vector de 1 por 5 de número aleatorio.s Los valores son los mismos que antes.

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

    0.0000    1.8507    0.0000    0.0001    0.0000

Cree una matriz de números aleatorios distribuidos lognorcamente con el mismo tamaño que una matriz existente.

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

    1.7120    0.1045
    6.2582    2.3683

Puede combinar las dos líneas de código anteriores en una sola línea.

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

Argumentos de entrada

contraer todo

Media de valores logarítmicos para la distribución lognormal, especificado como un valor escalar o una matriz de valores escalares.

Para generar números aleatorios a partir de varias distribuciones, especifique y utilice matrices.musigma Si ambos y son matrices, los tamaños de matriz deben ser los mismos.musigma Si cualquiera o es un escalar, a continuación,musigma lognrnd expande el argumento escalar en una matriz constante del mismo tamaño que el otro argumento. Cada elemento de es el número aleatorio generado a partir de la distribución especificada por los elementos correspondientes en y.rmusigma

Ejemplo: [0 1 2; 0 1 2]

Tipos de datos: single | double

Desviación estándar de valores logarítmicos para la distribución lognormal, especificada como un valor escalar no negativo o una matriz de valores escalares no negativos.

Si es cero, la salida siempre es igual a.sigmarexp(mu)

Para generar números aleatorios a partir de varias distribuciones, especifique y utilice matrices.musigma Si ambos y son matrices, los tamaños de matriz deben ser los mismos.musigma Si cualquiera o es un escalar, a continuación,musigma lognrnd expande el argumento escalar en una matriz constante del mismo tamaño que el otro argumento. Cada elemento de es el número aleatorio generado a partir de la distribución especificada por los elementos correspondientes en y.rmusigma

Ejemplo: [1 1 1; 2 2 2]

Tipos de datos: single | double

Tamaño de cada dimensión, especificado como enteros o un vector de fila de enteros. Por ejemplo, especificar o generar una matriz de 5 por 3 por 2 de números aleatorios de la distribución de probabilidad.5,3,2[5,3,2]

Si es o es una matriz, las dimensiones especificadas deben coincidir con las dimensiones comunes de y después de cualquier expansión escalar necesaria.musigmasz1,...,szNmusigma Los valores predeterminados de son las dimensiones comunes.sz1,...,szN

  • Si especifica un valor único, entonces es una matriz cuadrada de tamaño.sz1rsz1

  • Si el tamaño de cualquier dimensión es o negativo, entonces es una matriz vacía.0r

  • Más allá de la segunda dimensión, lognrnd omite las cotas finales con un tamaño de 1. Por ejemplo, lognrndproduce un vector de 3 por 1 de números aleatorios.(3,1,1,1)

Tipos de datos: single | double

Argumentos de salida

contraer todo

Números aleatorios lognormal, devueltos como un valor escalar o una matriz de valores escalares con las dimensiones especificadas por.sz1,...,szN Cada elemento de es el número aleatorio generado a partir de la distribución especificada por los elementos correspondientes en y.rmusigma

Más acerca de

contraer todo

Distribución Lognormal

The lognormal distribution is a probability distribution whose logarithm has a normal distribution.

La media y la varianza de una variable aleatoria lognormal son funciones de los parámetros de distribución lognormal y:mvµσ

m=exp(μ+σ2/2)v=exp(2μ+σ2)(exp(σ2)1)

Además, puede calcular los parámetros de distribución lognormal y de la media y la varianza:µσmv

μ=log(m2/v+m2)σ=log(v/m2+1)

Funcionalidad alternativa

  • lognrnd es una función específica de la distribución lognormal. también ofrece la función genérica, que admite varias distribuciones de probabilidad.Statistics and Machine Learning Toolbox™Aleatorio Para usar, cree un objeto de distribución de probabilidad y pase el objeto como un argumento de entrada o especifique el nombre de distribución de probabilidad y sus parámetros.AleatorioLognormalDistribution Tenga en cuenta que la función específica de la distribución lognrnd es más rápida que la función genérica.Aleatorio

  • Para generar números aleatorios de forma interactiva, utilice una interfaz de usuario de generación de número aleatorio.randtool

Referencias

[1] Marsaglia, G., and W. W. Tsang. “A Fast, Easily Implemented Method for Sampling from Decreasing or Symmetric Unimodal Density Functions.” SIAM Journal on Scientific and Statistical Computing. Vol. 5, Number 2, 1984, pp. 349–359.

[2] Evans, M., N. Hastings, and B. Peacock. Statistical Distributions. 2nd ed., Hoboken, NJ: John Wiley & Sons, Inc., 1993.

Capacidades ampliadas

Introducido antes de R2006a