Spec-Zone.ru › NumPy 1.18

Генератор случайных чисел

Класс Generator предоставляет доступ к широкому спектру распределений и служит заменой для RandomState. Основное различие между ними заключается в том, что Generator полагается на дополнительный генератор битов (BitGenerator), управляющий состоянием и генерирующий случайные биты, которые затем преобразуются в случайные значения из полезных распределений. По умолчанию Generator использует генератор битов PCG64. Генератор битов можно изменить, передав экземпляр BitGenerator в Generator.

numpy.random.default_rng()

Создаёт новый генератор со стандартным генератором битов (PCG64).

Параметры
seed{None, int, array_like[ints], SeedSequence, BitGenerator, Generator}, optional

Семено для инициализации генератора битов BitGenerator. Если равно None, то берётся свежая, непредсказуемая энтропия из ОС. Если передан int или array_like[ints], то он будет передан SeedSequence для получения начального состояния BitGenerator. Также можно передать экземпляр `SeedSequence`. Дополнительно, если передан BitGenerator, он будет обернут Generator. Если передан Generator, он будет возвращён без изменений.

Возвращаемое значение
Генератор

Инициализированный объект генератора.

Примечания

Если seed не является BitGenerator или Generator, новый BitGenerator создаётся. Данная функция не управляет глобальным экземпляром по умолчанию.

class numpy.random.Generator(bit_generator)

Контейнер для генераторов битов.

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

Функция numpy.random.default_rng создаст Generator с использованием стандартного генератора битов NumPy BitGenerator.

Гарантия совместимости отсутствует

Generator не предоставляет гарантии совместимости версий. В частности, с улучшением алгоритмов, поток битов может изменяться.

Параметры
bit_generatorBitGenerator

Генератор битов, используемый в качестве основного генератора.

См. также

default_rng

Рекомендуемый конструктор для Generator.

Примечания

Модуль Python stdlib random содержит генератор псевдослучайных чисел с рядом методов, аналогичных имеющимся в Generator. Он использует генератор Мерсенна-Твистера, и к этому генератору битов можно получить доступ через MT19937. Generator, помимо NumPy-совместимости, обладает преимуществом в том, что предоставляет гораздо больше вероятностных распределений для выбора.

Примеры

>>> from numpy.random import Generator, PCG64
>>> rg = Generator(PCG64())
>>> rg.standard_normal()
-0.203  # random

Доступ к генератору битов

bit_generator

Получение экземпляра генератора битов, используемого генератором

Простые случайные данные

integers(low[, high, size, dtype, endpoint])

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

random([size, dtype, out])

Возвращает случайные числа с плавающей точкой в полуоткрытом интервале [0.0, 1.0).

choice()

choice(a, size=None, replace=True, p=None, axis=0):

bytes(length)

Возвращает случайные байты.

Перестановки

shuffle(x[, axis])

Изменяет последовательность на месте, перемешивая её содержимое.

permutation(x[, axis])

Случайное перемешивание последовательности или возврат перестановки диапазона.

Распределения

beta(a, b[, size])

Генерировать выборки из бета-распределения.

binomial(n, p[, size])

Генерировать выборки из биномиального распределения.

chisquare(df[, size])

Генерировать выборки из хи-квадрат-распределения.

dirichlet(alpha[, size])

Генерировать выборки из дирихле-распределения.

exponential([scale, size])

Генерировать выборки из экспоненциального распределения.

f(dfnum, dfden[, size])

Генерировать выборки из F-распределения.

gamma(shape[, scale, size])

Генерировать выборки из гамма-распределения.

geometric(p[, size])

Генерировать выборки из геометрического распределения.

gumbel([loc, scale, size])

Генерировать выборки из распределения Гумбеля.

hypergeometric(ngood, nbad, nsample[, size])

Генерировать выборки из гипергеометрического распределения.

laplace([loc, scale, size])

Генерировать выборки из распределения Лапласа (или двойного экспоненциального) со заданной локацией (или средним) и масштабом (затуханием).

logistic([loc, scale, size])

Генерировать выборки из логистического распределения.

lognormal([mean, sigma, size])

Генерировать выборки из логарифмически нормального распределения.

logseries(p[, size])

Генерировать выборки из логарифмического ряда распределения.

multinomial(n, pvals[, size])

Генерировать выборки из многомерного биномиального распределения.

multivariate_hypergeometric(colors, nsample)

Генерировать выборки из многомерного гипергеометрического распределения.

multivariate_normal(mean, cov[, size, …])

Генерировать случайные выборки из многомерного нормального распределения.

negative_binomial(n, p[, size])

Генерировать выборки из отрицательного биномиального распределения.

noncentral_chisquare(df, nonc[, size])

Генерировать выборки из нецентрального хи-квадрат-распределения.

noncentral_f(dfnum, dfden, nonc[, size])

Генерировать выборки из нецентрального F-распределения.

normal([loc, scale, size])

Генерировать случайные выборки из нормального (гауссового) распределения.

pareto(a[, size])

Генерировать выборки из распределения Парето II или Ломакса со заданным параметром формы.

poisson([lam, size])

Генерировать выборки из пуассоновского распределения.

power(a[, size])

Генерирует выборки в [0, 1] из степенного распределения с положительным показателем a - 1.

rayleigh([scale, size])

Генерировать выборки из распределения Рейлея.

standard_cauchy([size])

Генерировать выборки из стандартного распределения Коши с модой = 0.

standard_exponential([size, dtype, method, out])

Генерировать выборки из стандартного экспоненциального распределения.

standard_gamma(shape[, size, dtype, out])

Генерировать выборки из стандартного гамма-распределения.

standard_normal([size, dtype, out])

Генерировать выборки из стандартного нормального распределения (среднее=0, стандартное отклонение=1).

standard_t(df[, size])

Генерировать выборки из стандартного распределения Стьюдента с df степенями свободы.

triangular(left, mode, right[, size])

Генерировать выборки из треугольного распределения на интервале [left, right].

uniform([low, high, size])

Генерировать выборки из равномерного распределения.

vonmises(mu, kappa[, size])

Генерировать выборки из распределения фон Мизеса.

wald(mean, scale[, size])

Генерировать выборки из распределения Вальда, или обратного гауссова распределения.

weibull(a[, size])

Генерировать выборки из распределения Вейбулла.

zipf(a[, size])

Генерировать выборки из распределения Ципфа.

© 2005–2020 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.18/reference/random/generator.html

Spec-Zone.ru

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