numpy.random.RandomState.random_integers
метод
- random.RandomState.random_integers(low, high=None, size=None)
-
Возвращает случайные целые числа типа
numpy.int_в интервале отlowдоhigh, включительно.Возвращает случайные целые числа типа
numpy.int_из равномерного распределения в замкнутом интервале [low,high]. Еслиhighравно None (по умолчанию), то значения генерируются из интервала [1,low]. Типnumpy.int_соответствует типу длинного целого числа C и его точность зависит от платформы.Эта функция устарела. Используйте randint вместо неё.
Устарело начиная с версии 1.11.0.
- Параметры:
-
- lowint
-
Наименьшее (со знаком) целое число, которое может быть сгенерировано (если
high=None, то этот параметр является наибольшим таким целым числом). - highint, необязательно
-
Если задано, то наибольшее (со знаком) целое число, которое может быть сгенерировано (см. поведение, если
high=None). - sizeint или кортеж из целых чисел, необязательно
-
Форма выходных данных. Если заданная форма, например,
(m, n, k), то генерируетсяm * n * kвыборок. По умолчанию None, в этом случае возвращается одно значение.
- Возвращает:
См. также
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–2024 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/2.0/reference/random/generated/numpy.random.RandomState.random_integers.html