numpy.random.Generator.laplace
метод
- random.Generator.laplace(loc=0.0, scale=1.0, size=None)
-
Генерирует выборки из распределения Лапласа (или двойного экспоненциального распределения) со заданной локацией (или средним значением) и масштабом (затуханием).
Распределение Лапласа похоже на гауссово/нормальное распределение, но имеет более острую вершину и более тяжёлые хвосты. Оно представляет собой разность двух независимых одинаково распределённых экспоненциальных случайных величин.
- Параметры
-
- locfloat или array_like float, необязательно
-
Позиция, \(\mu\), пика распределения. По умолчанию 0.
- scalefloat или array_like float, необязательно
-
\(\lambda\), экспоненциальное затухание. По умолчанию 1. Должно быть неотрицательным.
- sizeint или кортеж из целых чисел, необязательно
-
Форма выходных данных. Если заданная форма, например,
(m, n, k), тоm * n * kвыборок генерируются. Если size не указан (по умолчанию), то возвращается одно значение, еслиlocиscaleявляются скалярами. В противном случаеnp.broadcast(loc, scale).sizeвыборок генерируется.
- Возвращает
-
- outndarray или скаляр
-
Сгенерированные выборки из распределения Лапласа.
Примечания
Функция плотности вероятности:
\[f(x; \mu, \lambda) = \frac{1}{2\lambda} \exp\left(-\frac{|x - \mu|}{\lambda}\right).\]Первый закон Лапласа (1774) утверждает, что частота ошибки может быть выражена как экспоненциальная функция абсолютного значения ошибки, что приводит к распределению Лапласа. Для многих проблем в экономике и здравоохранении это распределение, кажется, лучше моделирует данные, чем стандартное гауссово распределение.
Ссылки
- 1
-
Abramowitz, M. and Stegun, I. A. (Eds.). “Handbook of Mathematical Functions with Formulas, Graphs, and Mathematical Tables, 9th printing,” New York: Dover, 1972.
- 2
-
Kotz, Samuel, et. al. “The Laplace Distribution and Generalizations, ” Birkhauser, 2001.
- 3
-
Weisstein, Eric W. “Laplace Distribution.” From MathWorld–A Wolfram Web Resource. http://mathworld.wolfram.com/LaplaceDistribution.html
- 4
-
Wikipedia, “Laplace distribution”, https://en.wikipedia.org/wiki/Laplace_distribution
Примеры
Генерация выборок из распределения
>>> loc, scale = 0., 1. >>> s = np.random.default_rng().laplace(loc, scale, 1000)
Отображение гистограммы выборок вместе с функцией плотности вероятности:
>>> import matplotlib.pyplot as plt >>> count, bins, ignored = plt.hist(s, 30, density=True) >>> x = np.arange(-8., 8., .01) >>> pdf = np.exp(-abs(x-loc)/scale)/(2.*scale) >>> plt.plot(x, pdf)
График Гауссова распределения для сравнения:
>>> g = (1/(scale * np.sqrt(2 * np.pi)) * ... np.exp(-(x - loc)**2 / (2 * scale**2))) >>> plt.plot(x,g)
© 2005–2022 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.21/reference/random/generated/numpy.random.Generator.laplace.html