numpy.random.random_integers
- random.random_integers(low, high=None, size=None)
-
Целые случайные числа типа
np.int_в диапазоне отlowдоhigh, включительно.Возвращает целые случайные числа типа
np.int_из распределения «дискретного равномерного» в замкнутом интервале [low,high]. Еслиhighравно None (по умолчанию), то результаты берутся из интервала [1,low]. Типnp.int_соответствует типу длинного целого числа C и его точность зависит от платформы.Эта функция устарела. Используйте randint вместо неё.
Устарела начиная с версии 1.11.0.
- Параметры
-
- lowint
-
Наименьшее (знаковое) целое число, которое может быть выбрано из распределения (если
high=None, в этом случае этот параметр является наибольшим таким целым числом). - highint, необязательно
-
Если указано, наибольшее (знаковое) целое число, которое может быть выбрано из распределения (см. выше поведение, если
high=None). - sizeint или кортеж из целых чисел, необязательно
-
Форма выходных данных. Если заданная форма, например,
(m, n, k), то генерируетсяm * n * kвыборок. По умолчанию None, в этом случае возвращается одно значение.
- Возвращает
-
- outint или ndarray целых чисел
-
Массив формы
size, содержащий случайные целые числа из соответствующего распределения, или одно случайное целое число, еслиsizeне указано.
См. также
randint-
Аналогично
random_integers, но для полуоткрытого интервала [low,high) и 0 является наименьшим значением, еслиhighопущено.
Примечания
Для выборки из N равномерно распределенных чисел с плавающей точкой между a и b используйте:
a + (b - a) * (np.random.random_integers(N) - 1) / (N - 1.)
Примеры
>>> np.random.random_integers(5) 4 # random >>> type(np.random.random_integers(5)) <class 'numpy.int64'> >>> np.random.random_integers(5, size=(3,2)) array([[5, 4], # random [3, 3], [4, 5]])Выберите пять случайных чисел из набора пяти равномерно распределенных чисел между 0 и 2,5 включительно (т. е., из набора \({0, 5/8, 10/8, 15/8, 20/8}\)):
>>> 2.5 * (np.random.random_integers(5, size=(5,)) - 1) / 4. array([ 0.625, 1.25 , 0.625, 0.625, 2.5 ]) # random
Подбросьте две шестигранные кости 1000 раз и сложите результаты:
>>> d1 = np.random.random_integers(1, 6, 1000) >>> d2 = np.random.random_integers(1, 6, 1000) >>> dsums = d1 + d2
Отобразите результаты в виде гистограммы:
>>> import matplotlib.pyplot as plt >>> count, bins, ignored = plt.hist(dsums, 11, 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.random_integers.html