Метод exponential
Метод exponential класса Generator генерирует случайные числа из экспоненциального распределения. Первым параметром метод принимает масштаб распределения (обратный параметру скорости), вторым параметром можно задать форму выходного массива.
Синтаксис
generator.exponential(scale=1.0, size=None)
Пример
Давайте сгенерируем одно случайное число из экспоненциального распределения со стандартным масштабом:
import numpy as np
rng = np.random.default_rng(0)
res = rng.exponential()
print(res)
Результат выполнения кода:
0.6572555395108051
Пример
Давайте сгенерируем массив из 5 случайных чисел с масштабом 2.0:
import numpy as np
rng = np.random.default_rng(0)
arr = rng.exponential(scale=2.0, size=5)
print(arr)
Результат выполнения кода:
[1.31451108 2.58241892 2.99990251 4.31550979 2.71364908]
Пример
Давайте создадим двумерный массив 3x4 из экспоненциально распределенных чисел с масштабом 0.5:
import numpy as np
rng = np.random.default_rng(0)
arr = rng.exponential(scale=0.5, size=(3, 4))
print(arr)
Результат выполнения кода:
[[0.32862777 0.40705557 0.17371276 0.18708417]
[0.13987073 0.1718274 0.36676566 0.46792971]
[0.98972501 0.75562822 1.08167138 0.28637435]]
Пример
Давайте сгенерируем массив и вычислим его среднее значение, которое должно быть близко к параметру масштаба:
import numpy as np
rng = np.random.default_rng(0)
arr = rng.exponential(scale=3.0, size=1000)
mean_val = np.mean(arr)
print(mean_val)
Результат выполнения кода:
2.9689731027760934
Смотрите также
-
класс
Generator,
который предоставляет методы для генерации случайных чисел -
метод
standard_exponential,
который генерирует числа из стандартного экспоненциального распределения -
метод
normal,
который генерирует числа из нормального распределения -
метод
uniform,
который генерирует числа из равномерного распределения