Генератор случайных чисел
Класс 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с использованием стандартного генератора битов NumPyBitGenerator.Гарантия совместимости отсутствует
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
Доступ к генератору битов
Получение экземпляра генератора битов, используемого генератором |
Простые случайные данные
| Возвращает случайные целые числа от |
| Возвращает случайные числа с плавающей точкой в полуоткрытом интервале [0.0, 1.0). |
| choice(a, size=None, replace=True, p=None, axis=0): |
| Возвращает случайные байты. |
Перестановки
| Изменяет последовательность на месте, перемешивая её содержимое. |
| Случайное перемешивание последовательности или возврат перестановки диапазона. |
Распределения
| Генерировать выборки из бета-распределения. |
| Генерировать выборки из биномиального распределения. |
| Генерировать выборки из хи-квадрат-распределения. |
| Генерировать выборки из дирихле-распределения. |
| Генерировать выборки из экспоненциального распределения. |
| Генерировать выборки из F-распределения. |
| Генерировать выборки из гамма-распределения. |
| Генерировать выборки из геометрического распределения. |
| Генерировать выборки из распределения Гумбеля. |
| Генерировать выборки из гипергеометрического распределения. |
| Генерировать выборки из распределения Лапласа (или двойного экспоненциального) со заданной локацией (или средним) и масштабом (затуханием). |
| Генерировать выборки из логистического распределения. |
| Генерировать выборки из логарифмически нормального распределения. |
| Генерировать выборки из логарифмического ряда распределения. |
| Генерировать выборки из многомерного биномиального распределения. |
| Генерировать выборки из многомерного гипергеометрического распределения. |
| Генерировать случайные выборки из многомерного нормального распределения. |
| Генерировать выборки из отрицательного биномиального распределения. |
| Генерировать выборки из нецентрального хи-квадрат-распределения. |
| Генерировать выборки из нецентрального F-распределения. |
| Генерировать случайные выборки из нормального (гауссового) распределения. |
| Генерировать выборки из распределения Парето II или Ломакса со заданным параметром формы. |
| Генерировать выборки из пуассоновского распределения. |
| Генерирует выборки в [0, 1] из степенного распределения с положительным показателем a - 1. |
| Генерировать выборки из распределения Рейлея. |
| Генерировать выборки из стандартного распределения Коши с модой = 0. |
| Генерировать выборки из стандартного экспоненциального распределения. |
| Генерировать выборки из стандартного гамма-распределения. |
| Генерировать выборки из стандартного нормального распределения (среднее=0, стандартное отклонение=1). |
| Генерировать выборки из стандартного распределения Стьюдента с |
| Генерировать выборки из треугольного распределения на интервале |
| Генерировать выборки из равномерного распределения. |
| Генерировать выборки из распределения фон Мизеса. |
| Генерировать выборки из распределения Вальда, или обратного гауссова распределения. |
| Генерировать выборки из распределения Вейбулла. |
| Генерировать выборки из распределения Ципфа. |
© 2005–2020 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.18/reference/random/generator.html