Spec-Zone.ru › NumPy 1.20

numpy.random.uniform

random.uniform(low=0.0, high=1.0, size=None)

Генерация выборок из равномерного распределения.

Выборки равномерно распределены по полуоткрытому интервалу [low, high) (включает низкую границу, но не включает высокую). Другими словами, любое значение внутри заданного интервала равновероятно для выбора функцией uniform.

Примечание

Новый код должен использовать метод uniform экземпляра default_rng(); см. Быстрый старт.

Параметры
lowfloat or array_like of floats, optional

Нижняя граница интервала вывода. Все сгенерированные значения будут больше или равны low. По умолчанию значение равно 0.

highfloat or array_like of floats

Верхняя граница интервала вывода. Все сгенерированные значения будут меньше или равны high. По умолчанию значение равно 1.0.

sizeint or tuple of ints, optional

Форма выходных данных. Если заданная форма, например, (m, n, k), то генерируется m * n * k выборок. Если size не задано (по умолчанию), возвращается одно значение, если low и high являются скалярами. В противном случае генерируется np.broadcast(low, high).size выборок.

Возвращаемые значения
outndarray or scalar

Сгенерированные выборки из параметризованного равномерного распределения.

См. также

randint

Дискретное равномерное распределение, генерирующее целые числа.

random_integers

Дискретное равномерное распределение по замкнутому интервалу [low, high].

random_sample

Вещественные числа, равномерно распределенные по интервалу [0, 1).

random

Псевдоним для random_sample.

rand

Удобная функция, принимающая размерности в качестве входных данных, например, rand(2,2) сгенерирует массив 2x2 вещественных чисел, равномерно распределенных по [0, 1).

Generator.uniform

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

Примечания

Плотность вероятности равномерного распределения:

p(x) = \frac{1}{b - a}

в любом месте интервала [a, b), и ноль в остальных точках.

Когда high == low, возвращаются значения low. Если high < low, результаты неопределенны и могут в конечном итоге привести к ошибке, т.е. не полагайтесь на эту функцию при таких значениях аргументов. Граница high может быть включена в возвращаемый массив чисел с плавающей точкой из-за округления в уравнении low + (high-low) * random_sample(). Например:

>>> x = np.float32(5*0.99999999)
>>> x
5.0

Примеры

Генерация выборок из распределения:

>>> s = np.random.uniform(-1,0,1000)

Все значения находятся в заданном интервале:

>>> np.all(s >= -1)
True
>>> np.all(s < 0)
True

Вывод гистограммы выборок вместе с функцией плотности вероятности:

>>> import matplotlib.pyplot as plt
>>> count, bins, ignored = plt.hist(s, 15, density=True)
>>> plt.plot(bins, np.ones_like(bins), linewidth=2, color='r')
>>> plt.show()
../../../_images/numpy-random-uniform-1.png

© 2005–2021 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.20/reference/random/generated/numpy.random.uniform.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API