Spec-Zone.ru › NumPy 1.20

numpy.random.Generator.integers

метод

random.Generator.integers(low, high=None, size=None, dtype=np.int64, endpoint=False)

Возвращает случайные целые числа от low (включительно) до high (исключительно), или если endpoint=True, от low (включительно) до high (включительно). Заменяет RandomState.randint (с endpoint=False) и RandomState.random_integers (с endpoint=True)

Возвращает случайные целые числа из «дискретного равномерного» распределения указанного типа данных. Если high равно None (по умолчанию), то результаты находятся от 0 до low.

Параметры
lowint or array-like of ints

Наименьшее (знаковое) целое число, которое будет взято из распределения (если high=None, в этом случае этот параметр равен 0, и это значение используется для high).

highint or array-like of ints, optional

Если предоставлено, значение на единицу больше наибольшего (знакового) целого числа, которое будет взято из распределения (см. выше поведение, если high=None). Если массив-подобный объект, должен содержать целочисленные значения.

sizeint or tuple of ints, optional

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

dtypedtype, optional

Желаемый тип данных результата. Порядок байтов должен быть родным. Значение по умолчанию — np.int64.

endpointbool, optional

Если True, выборка выполняется из интервала [low, high] вместо стандартного [low, high). По умолчанию False.

Возвращает
outint or ndarray of ints

size-массив случайных целых чисел из соответствующего распределения, или одно случайное целое число, если size не указан.

Примечания

При использовании векторизации с uint64 типами данных максимальное значение (2**64) не может быть представлено стандартным целочисленным типом. Массив high (или low, если high равен None) должен иметь объект типа, например, array([2**64]).

Ссылки

1

Daniel Lemire., «Быстрое случайное генерирование целых чисел в интервале», ACM Transactions on Modeling and Computer Simulation 29 (1), 2019, http://arxiv.org/abs/1805.10941.

Примеры

>>> rng = np.random.default_rng()
>>> rng.integers(2, size=10)
array([1, 0, 0, 0, 1, 1, 0, 0, 1, 0])  # random
>>> rng.integers(1, size=10)
array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0])

Генерирует массив 2 x 4 целых чисел от 0 до 4 включительно:

>>> rng.integers(5, size=(2, 4))
array([[4, 0, 2, 1],
       [3, 2, 2, 0]])  # random

Генерирует массив 1 x 3 с 3 различными верхними границами

>>> rng.integers(1, [3, 5, 10])
array([2, 2, 9])  # random

Генерирует массив 1 x 3 с 3 различными нижними границами

>>> rng.integers([1, 5, 7], 10)
array([9, 8, 7])  # random

Генерирует массив 2 x 4, используя векторизацию с типом данных uint8

>>> rng.integers([1, 3, 5, 7], [[10], [20]], dtype=np.uint8)
array([[ 8,  6,  9,  7],
       [ 1, 16,  9, 12]], dtype=uint8)  # random

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

Spec-Zone.ru

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