numpy.random.RandomState.standard_cauchy#

метод

random.RandomState.standard_cauchy(размер=None)#

Извлеките выборки из стандартного распределения Коши с модой = 0.

Также известное как распределение Лоренца.

Примечание

Новый код должен использовать standard_cauchy метод Generator экземпляр вместо; пожалуйста, смотрите Быстрый старт.

Параметры:
размерint или кортеж ints, опционально

Форма вывода. Если заданная форма, например, (m, n, k), затем m * n * k выбираются образцы. По умолчанию None, в этом случае возвращается одно значение.

Возвращает:
образцыndarray или скаляр

Извлеченные выборки.

Смотрите также

random.Generator.standard_cauchy

который следует использовать для нового кода.

Примечания

Функция плотности вероятности для полного распределения Коши равна

\[P(x; x_0, \gamma) = \frac{1}{\pi \gamma \bigl[ 1+ (\frac{x-x_0}{\gamma})^2 \bigr] }\]

и стандартное распределение Коши просто устанавливает \(x_0=0\) и \(\gamma=1\)

Распределение Коши возникает при решении задачи вынужденного гармонического осциллятора, а также описывает уширение спектральных линий. Оно также описывает распределение значений, в которых линия, наклонённая под случайным углом, пересечёт ось x.

При изучении тестов гипотез, предполагающих нормальность, наблюдение за тем, как тесты работают на данных из распределения Коши, является хорошим показателем их чувствительности к распределению с тяжелыми хвостами, поскольку распределение Коши очень похоже на гауссово распределение, но с более тяжелыми хвостами.

Ссылки

[1]

NIST/SEMATECH e-Handbook of Statistical Methods, "Распределение Коши", https://www.itl.nist.gov/div898/handbook/eda/section3/eda3663.htm

[2]

Вайсштейн, Эрик В. "Распределение Коши." Из MathWorld — веб-ресурс Wolfram. https://mathworld.wolfram.com/CauchyDistribution.html

[3]

Википедия, "Распределение Коши" https://en.wikipedia.org/wiki/Cauchy_distribution

Примеры

Взять выборки и построить распределение:

>>> import matplotlib.pyplot as plt
>>> s = np.random.standard_cauchy(1000000)
>>> s = s[(s>-25) & (s<25)]  # truncate distribution so it plots well
>>> plt.hist(s, bins=100)
>>> plt.show()
../../../_images/numpy-random-RandomState-standard_cauchy-1.png