usar tabla online normal estandar ejemplos distribucion como caracteristicas calculo calcular algorithm statistics gaussian normal-distribution poisson

algorithm - tabla - Generando una distribución gaussiana con solo números positivos



distribucion normal pdf (8)

¿Hay alguna manera de generar aleatoriamente un conjunto de números positivos para que tengan una media y una desviación estándar deseadas?

Tengo un algoritmo para generar números con una distribución gaussiana, pero no sé cómo manejar los números negativos de una manera que preserve la media y la desviación estándar.
Parece que una distribución de Poisson podría ser una buena aproximación, pero solo requiere una media.

EDITAR: Ha habido cierta confusión en las respuestas, así que intentaré aclarar.

Tengo un conjunto de números que me dan una media y una desviación estándar. Me gustaría generar un conjunto de números del mismo tamaño con una media y desviación estándar equivalente. Normalmente, usaría una distribución gaussiana para hacer esto, sin embargo, en este caso tengo una restricción adicional de que todos los valores deben ser mayores que cero.

El algoritmo que estoy buscando no necesita ser gaussiano (a juzgar por los comentarios hasta ahora, probablemente no debería ser así) y no necesita ser perfecto. No importa si el conjunto de números resultante tiene una media / desviación estándar ligeramente diferente: solo quiero algo que normalmente estará en el estadio.


Es posible que esté buscando una distribución logarítmica normal, como sugirió David Norman, o tal vez una distribución exponencial , binomial o de otro tipo. Si tiene un algoritmo para generar una distribución, probablemente no sea bueno para generar números que se ajusten a otra distribución. Pero solo tú sabes cómo se distribuyen realmente tus números.

Con una distribución normal, el rango de la variable aleatoria es de infinito negativo a infinito positivo, por lo que si solo buscas números positivos, entonces no es gaussiano.

Las diferentes distribuciones también tienen propiedades únicas, por ejemplo, con la distribución de Poisson, las desviaciones estándar siempre son iguales a la media. (Es por eso que su función de biblioteca no solicita el parámetro de desviación estándar, solo la media).

En el peor de los casos, podría generar un número real aleatorio entre 0 y 1 y calcular la función de densidad de probabilidad por su cuenta. (Dependiendo de la distribución, esto puede ser mucho más fácil decirlo que hacerlo).



Primero, no puede generar solo valores positivos de una distribución gaussiana.

En segundo lugar, ¿estoy entendiendo correctamente que está tratando de generar una distribución aleatoria con la media y la desviación estándar dadas? ¿Hará cualquier distribución? Si es así, deje mean = m y la desviación estándar = s . Supongo que m - s > 0 .

let n = random integer modulo 2; if n equals 0 return m - s else return m + s

Los valores devueltos por este proceso tendrán media m y desviación estándar s .


Si lo entiendo correctamente, quiere generar números aleatorios a partir de una distribución con soporte positivo. Hay muchas opciones posibles. El más simple es el

chi-square: http://en.wikipedia.org/wiki/Chi-square_distribution (que es solo la suma de dos cuadrados gaussianos)

Toda la distribución asimétrica (exponencial, weibull, pareto, Gauss inverso, log-normal, Gamma)

Todas las distribuciones del sesgo familly (sesgo-normal, sesgo-alumno, ...)

Todas las funciones anteriores son tales que cualquier número aleatorio extraído de cualquiera de ellos siempre será positivo.


¿Por qué no usar un método de remuestreo? Si tiene n números en su muestra, simplemente tome n sorteos al azar de la muestra, con reemplazo . El conjunto resultante tendrá la media y la varianza esperadas aproximadamente igual a la muestra original, pero generalmente será ligeramente diferente.

Dicho esto, sin saber por qué necesita más números aleatorios, es imposible decir cuál es la respuesta correcta. Uno se pregunta si está tratando de resolver el problema equivocado ...


No pude resistirme. Me gusta mucho el ángulo de Jason, pero no me gustó que su respuesta solo cubriera casos en los que m> s, así que elaboré una solución general siguiendo su idea.
La distribución más simple con m, s dados y términos positivos es

con probabilidad p, retorno 0
con probabilidad (1-p), retorno m / (1-p)
donde (1-p) = m ^ 2 / (m ^ 2 + s ^ 2)

Prueba: para una distribución X con dos resultados lowX con probabilidad p y highX con probabilidad (1-p),
m = E [X] = px lowX + (1-p) x highX
s ^ 2 = Varianza (X) = E [X ^ 2] - E [X] ^ 2 = px lowX ^ 2 + (1-p) x highX ^ 2 - m ^ 2

Establezca lowX en 0 y resuelva en highX y p.


Puede usar cualquier distribución que tenga soporte positivo Y se puede especificar por medio y varianza. Por ejemplo,

  • Las distribuciones de un parámetro no funcionarán en general. Por ejemplo, chi-cuadrado no funcionará a menos que tu varianza sea siempre el doble de su media. De manera similar, exponencial no funcionará a menos que tu varianza sea igual a tu media al cuadrado.
  • algunas distribuciones de dos parámetros no funcionarán en algunos casos. La distribución binomial no funcionará a menos que la varianza sea menor que su media. De manera similar, el chi-cuadrado no central no funcionará a menos que tu varianza sea mayor que 2 veces tu media y menos de 4 veces tu media.
  • Sin embargo, log-normal y gamma funcionarán en todos los casos.

¿De qué diablos están hablando payasos? la normal estándar tiene cero significante, pero ese es un caso especial de la distribución gaussiana, que tiene una media de parámetros y una desviación estándar. a medida que la media aumenta, con sd constante, la probabilidad de generar cualquier número bajo cero disminuye a cero. puedes tener absolutamente una distribución gaussiana sin números negativos.