numpy.random.triangular
- random.triangular(left, mode, right, size=None)
-
Draw samples from the triangular distribution over the interval
[left, right].The triangular distribution is a continuous probability distribution with lower limit left, peak at mode, and upper limit right. Unlike the other distributions, these parameters directly define the shape of the pdf.
Примечание
Новый код должен использовать метод
triangularэкземпляраdefault_rng(); см. Быстрый старт.- Parameters
-
- leftfloat or array_like of floats
-
Нижний предел.
- modefloat or array_like of floats
-
Значение, где происходит пик распределения. Значение должно удовлетворять условию
left <= mode <= right. - rightfloat or array_like of floats
-
Верхний предел, должен быть больше
left. - sizeint or tuple of ints, optional
-
Форма вывода. Если заданная форма, например,
(m, n, k), тоm * n * kобразцов генерируются. Если size имеет значениеNone(по умолчанию), возвращается одно значение, еслиleft,mode, иrightявляются скалярными величинами. В противном случаеnp.broadcast(left, mode, right).sizeобразцов генерируется.
- Returns
-
- outndarray or scalar
-
Сгенерированные образцы из параметризованного треугольного распределения.
См. также
Generator.triangular-
который следует использовать для нового кода.
Notes
Функция плотности вероятности для треугольного распределения:
\[\begin{split}P(x;l, m, r) = \begin{cases} \frac{2(x-l)}{(r-l)(m-l)}& \text{для $l \leq x \leq m$},\\ \frac{2(r-x)}{(r-l)(r-m)}& \text{для $m \leq x \leq r$},\\ 0& \text{в противном случае}. \end{cases}\end{split}\]Треугольное распределение часто используется в плохо определенных задачах, где основное распределение неизвестно, но известны пределы и мода. Часто оно используется в симуляциях.
References
- 1
-
Wikipedia, “Треугольное распределение” https://en.wikipedia.org/wiki/Triangular_distribution
Examples
Генерировать значения из распределения и построить гистограмму:
>>> import matplotlib.pyplot as plt >>> h = plt.hist(np.random.triangular(-3, 0, 8, 100000), bins=200, ... density=True) >>> plt.show()
© 2005–2022 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.21/reference/random/generated/numpy.random.triangular.html