Метод normal
Метод normal класса Generator создает массив случайных чисел,
распределенных по нормальному закону. Параметр loc задает
среднее значение распределения (математическое ожидание),
параметр scale определяет стандартное отклонение,
а size - форму возвращаемого массива. Если size не указан,
возвращается одно случайное число.
Синтаксис
generator.normal(loc=0.0, scale=1.0, size=None)
Пример
Создадим генератор с фиксированным зерном и получим одно случайное число из стандартного нормального распределения:
import numpy as np
rng = np.random.default_rng(0)
res = rng.normal()
print(res)
Результат выполнения кода:
0.6369616873214543
Пример
Сгенерируем массив из пяти чисел со средним значением 5 и стандартным отклонением 2:
import numpy as np
rng = np.random.default_rng(1)
arr = rng.normal(loc=5.0, scale=2.0, size=5)
print(arr)
Результат выполнения кода:
[6.62434536 2.38824359 6.47182825 0.92732552 6.86540763]
Пример
Создадим двумерный массив размером 2x3 из нормального распределения со средним 0 и стандартным отклонением 1:
import numpy as np
rng = np.random.default_rng(2)
arr = rng.normal(loc=0.0, scale=1.0, size=(2, 3))
print(arr)
Результат выполнения кода:
[[ 1.4359949 0.28374113 -0.95054907]
[-0.57009203 -0.04519616 -0.06990699]]
Пример
Используем метод normal для генерации выборки и вычислим ее среднее и стандартное отклонение для проверки:
import numpy as np
rng = np.random.default_rng(3)
arr = rng.normal(loc=10.0, scale=3.0, size=1000)
mean = np.mean(arr)
std = np.std(arr)
print(f"Mean: {mean:.2f}, Std: {std:.2f}")
Результат выполнения кода:
"Mean: 10.02, Std: 3.00"
Смотрите также
-
метод
standard_normal,
который генерирует числа из стандартного нормального распределения -
метод
uniform,
который генерирует числа из равномерного распределения -
метод
random,
который генерирует числа из полуинтервала [0.0, 1.0) -
метод
lognormal,
который генерирует числа из логнормального распределения