numpy.random.Generator.pareto#
метод
- random.Generator.pareto(a, размер=None)#
Извлекает выборки из распределения Парето II (также известного как Ломакс) с заданной формой.
- Параметры:
- afloat или array_like из float
Форма распределения. Должна быть положительной.
- размерint или кортеж ints, опционально
Форма вывода. Если заданная форма, например,
(m, n, k), затемm * n * kобразцы извлекаются. Если size равенNone(по умолчанию), возвращается единственное значение, еслиaявляется скаляром. В противном случае,np.array(a).sizeвыбираются образцы.
- Возвращает:
- выходndarray или скаляр
Выборки из распределения Парето II.
Смотрите также
scipy.stats.paretoРаспределение Парето I
scipy.stats.lomaxРаспределение Ломакса (Парето II)
scipy.stats.genparetoОбобщённое распределение Парето
Примечания
Функция плотности вероятности для распределения Парето II равна
\[p(x) = \frac{a}{(x+1)^{a+1}} , x \ge 0\]где \(a > 0\) это форма.
Распределение Парето II — это сдвинутая и масштабированная версия распределения Парето I, которое можно найти в
scipy.stats.pareto.Ссылки
[1]Фрэнсис Хант и Пол Джонсон, О распределении Парето проектов Sourceforge.
[2]Парето, В. (1896). Курс политической экономии. Лозанна.
[3]Reiss, R.D., Thomas, M.(2001), Statistical Analysis of Extreme Values, Birkhauser Verlag, Basel, pp 23-30.
[4]Википедия, "Распределение Парето", https://en.wikipedia.org/wiki/Pareto_distribution
Примеры
Извлечь выборки из распределения:
>>> a = 3. >>> rng = np.random.default_rng() >>> s = rng.pareto(a, 10000)
Отобразить гистограмму выборок вместе с функцией плотности вероятности:
>>> import matplotlib.pyplot as plt >>> x = np.linspace(0, 3, 50) >>> pdf = a / (x+1)**(a+1) >>> plt.hist(s, bins=x, density=True, label='histogram') >>> plt.plot(x, pdf, linewidth=2, color='r', label='pdf') >>> plt.xlim(x.min(), x.max()) >>> plt.legend() >>> plt.show()