все Python 3randomфункция
random.lognormvariate
распределения
Случайное число из логнормального распределения (логарифм подчинён нормальному с mu, sigma); результат всегда положителен.
Синтаксис
random.lognormvariate(mu, sigma)
mu и sigma описывают логарифм результата, а не сам результат: медиана выдачи равна exp(mu), а среднее — exp(mu + sigma^2/2). Подставлять сюда желаемое среднее и разброс самих чисел — типичная ошибка. Распределение скошено вправо: длинный хвост больших значений тянет среднее заметно выше медианы, из-за чего оно и годится для моделирования доходов, времени отклика, размеров файлов.
Примеры
import random
print(type(random.lognormvariate(0.0, 1.0)).__name__) # → float (значение случайное, медиана ≈ 1.0)
print(random.lognormvariate(0.0, 1.0) > 0.0) # → True
print(random.lognormvariate(0.0, 0.0)) # → 1.0
sample = [random.lognormvariate(0.0, 1.0) for _ in range(1000)]
print(all(x > 0.0 for x in sample)) # → True
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности