Spec-Zone.ru › NumPy 1.11

numpy.random.RandomState.random_integers

RandomState.random_integers(low, high=None, size=None)

Целочисленные случайные значения типа np.int в интервале от low до high, включительно.

Возвращает целочисленные случайные значения типа np.int из «равномерного дискретного» распределения в закрытом интервале [low, high]. Если high равно None (по умолчанию), значения берутся из [1, low]. Тип np.int соответствует типу C long, используемому в Python 2 для «коротких» целых чисел, и его точность зависит от платформы.

Эта функция устарела. Используйте randint вместо неё.

Устарело начиная с версии 1.11.0.

Параметры:

low : int

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

high : int, необязательно

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

size : int или кортеж из целых чисел, необязательно

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

Возвращает:

out : int или массив ndarray целых чисел

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

См. также

random.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
>>> type(np.random.random_integers(5))
<type 'int'>
>>> np.random.random_integers(5, size=(3.,2.))
array([[5, 4],
       [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  ])

Бросьте две шестигранные кости 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, normed=True)
>>> plt.show()

(Исходный код, png, pdf)

../../_images/numpy-random-RandomState-random_integers-1.png

© 2008–2016 NumPy Developers
Licensed under the NumPy License.
https://docs.scipy.org/doc/numpy-1.11.0/reference/generated/numpy.random.RandomState.random_integers.html

Spec-Zone.ru

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