La transformada de Box-Muller es un método de generación de pares de números aleatorios independientes con distribución normal de media nula y varianza 1, a partir de pares de números aleatorios con distribución uniforme. La transformación consiste en mapear pares de coordenadas (U1,U2)
pertenecientes al cuadrado unidad definido por (0,0)
y (1,1)
, sobre puntos (Z0,Z1)
cuyo dominio se extiende a cualquier punto del plano.
rnorm.boxmuller()
en R que, aceptando como argumento una matriz de dos columnas, devuelve otra matriz del mismo tamaño con los valores transformados correspondientes a los originales.


Aumentamos a 400.000 el número de pares numéricos a ser transformados, y acumulamos los trazos de los mismos sobre una matriz que guardamos como imagen de 16 bits. Surgen claramente no sólo el cuadrado unidad de la distribución uniforme, sino también curiosos patrones allí donde la transformación genera mayor densidad de paso. Se ha añadido color en Photoshop (recomendable hacer clic para ver en todo su esplendor):
Repositorio con el código R: GitHub.
No hay comentarios:
Publicar un comentario
Por claridad del blog, por favor trata de utilizar una sintaxis lo más correcta posible y no abusar del uso de emoticonos, mayúsculas y similares.