numpy.random.RandomState.uniform
метод
- random.RandomState.uniform(low=0.0, high=1.0, size=None)
-
Генерирует выборки из равномерного распределения.
Выборка равномерно распределена по полуоткрытому интервалу
[low, high)(включает low, но не включает high). Другими словами, любое значение в заданном интервале с равной вероятностью может быть получено с помощьюuniform.Примечание
Новый код должен использовать метод
uniformэкземпляраdefault_rng(); см. Быстрый старт.- Параметры
-
- lowfloat или array_like из float, необязательно
-
Нижняя граница интервала вывода. Все сгенерированные значения будут больше или равны low. По умолчанию 0.
- highfloat или array_like из float
-
Верхняя граница интервала вывода. Все сгенерированные значения будут меньше или равны high. По умолчанию 1.0.
- sizeint или кортеж из int, необязательно
-
Форма выходных данных. Если заданная форма, например,
(m, n, k), тоm * n * kвыборок генерируется. Если size равенNone(по умолчанию), возвращается единственное значение, еслиlowиhighявляются скалярами. В противном случае генерируетсяnp.broadcast(low, high).sizeвыборок.
- Возвращает
-
- outndarray или скаляр
-
Сгенерированные выборки из параметризованного равномерного распределения.
См. также
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()
© 2005–2022 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.21/reference/random/generated/numpy.random.RandomState.uniform.html