Cómo utilizar Randn en MATLAB para generar números aleatorios dentro de ciertos límites

Escrito por joe friedman | Traducido por analia moranchel
  • Comparte
  • Twittea
  • Comparte
  • Pin
  • E-mail
Cómo utilizar Randn en MATLAB para generar números aleatorios dentro de ciertos límites
MATLAB es un programa técnico. (Thomas Northcut/Digital Vision/Getty Images)

MATLAB es un programa técnico que puede realizar aritmética, cálculo, cálculos, álgebra lineal, figura de trazado, procesamiento de señales y cientos de otras aplicaciones. Su versatilidad proviene de sus miles de funciones preprogramadas incorporadas. Una de esas funciones es "randn". Ordénale a la función el número de filas y columnas de datos que desees y crea una matriz de valores aleatorios donde los valores caen en una distribución "normal" o en "curva de campana" alrededor de una media. No puedes dar a "randn" los límites mínimo y máximo directamente, pero lo que puedes hacer en su lugar es estirar su salida en cualquier rango que necesites.

Nivel de dificultad:
Moderado

Otras personas están leyendo

Instrucciones

  1. 1

    Haz una matriz de valores aleatorios, normalmente distribuidos mediante la función randn. Por ejemplo, escribe en la línea de comandos de MATLAB:

    A = randn(4, 5)

    Presiona Enter. MATLAB crea una matriz "A" con cuatro filas y cinco columnas. Los 20 valores de la matriz se distribuirán normalmente alrededor de una media central.

  2. 2

    Calcula la diferencia entre el número máximo en "A" y el número mínimo en "A" con el siguiente código:

    FDiff = max(A) – min(A)

    MATLAB almacena el rango de la función randn en "FDiff". Por ejemplo, si el número mínimo era de -0,1 y el máximo era de 1,9, entonces MATLAB daría a "FDiff" el valor de dos.

  3. 3

    Calcula la diferencia entre los números máximos y mínimos sobre los que deseas que los números aleatorios se estiren. Por ejemplo, escribe este código y pulsa Enter:

    RDiff = 30 - 10

    MATLAB almacenará tu rango deseado en "RDiff." En este ejemplo, el número máximo en el rango que quieres es de 30 y el mínimo es de 10. MATLAB almacena el valor 20 en "RDiff".

  4. 4

    Calcula la escala que necesitas para estirar los valores de la matriz "A" para ajustarlos en su rango. Escribe en la línea y pulsa Enter:

    scale = RDiff/FDiff

    Con los números anteriores de ejemplo, MATLAB divide 20 en dos y da “scale” ("escala") al valor 10.

  5. 5

    Escala los valores de la matriz "A" para que se estiren tan amplio o tan estrecho como tu rango deseado con el siguiente código:

    A2 = scale*A

  6. 6

    Mueve la matriz "A2" hacia arriba o hacia abajo de la línea numérica hasta que su valor mínimo coincida con su valor mínimo, por ejemplo 10, con este código:

    A3 = A2 + (10 – min(A2))

    Este resultado final, "A3", es una matriz de números distribuidos normalmente dentro de lo que el rango establece. En este ejemplo, los números aleatorios se extienden desde 10 hasta 30.

No dejes de ver

Filtrar por:
  • Mostrar todos
  • Artículos
  • Galerías de fotos
  • Videos
Ordenar:
  • Más relevante
  • Más popular
  • Más reciente

No se encuentran artículos disponibles

No se encuentran slideshows disponibles

No se encuentran videos disponibles