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 включительно (т.е., из набора
):>>> 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)
© 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