РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
28 of 541 menu

Функция seed

Функция seed устанавливает начальное значение (зерно) для генератора псевдослучайных чисел NumPy. Это необходимо, чтобы сделать результаты воспроизводимыми: при одинаковом зерне последовательность случайных чисел будет одинаковой. Функция относится к модулю numpy.random.

Синтаксис

np.random.seed(seed)

Параметр seed может быть целым числом или другим объектом, который можно преобразовать в 32-битное целое. Если передать None, то зерно будет выбрано автоматически (на основе системного времени или данных ОС).

Пример

Установим зерно и сгенерируем три случайных числа:

import numpy as np np.random.seed(42) arr = np.random.randint(0, 10, size=5) print(arr)

Результат выполнения кода:

[6 3 7 4 6]

Если запустить код ещё раз, результат будет тем же, благодаря фиксированному зерну.

Пример

Покажем, что при одинаковом зерне последовательности совпадают:

import numpy as np np.random.seed(0) arr1 = np.random.rand(3) np.random.seed(0) arr2 = np.random.rand(3) print(arr1) print(arr2)

Результат выполнения кода:

[0.5488135 0.71518937 0.60276338] [0.5488135 0.71518937 0.60276338]

Пример

Если использовать разные зерна, последовательности будут отличаться:

import numpy as np np.random.seed(1) arr1 = np.random.normal(0, 1, 3) np.random.seed(2) arr2 = np.random.normal(0, 1, 3) print(arr1) print(arr2)

Результат выполнения кода:

[ 1.62434536 -0.61175641 -0.52817175] [-0.41675785 -0.05626683 -2.1361961 ]

Пример

Функцию seed можно использовать с генератором default_rng для более современного подхода:

import numpy as np rng = np.random.default_rng(seed=123) arr = rng.integers(0, 100, size=4) print(arr)

Результат выполнения кода:

[47 74 11 91]

Смотрите также

  • функцию default_rng,
    которая создаёт генератор с более современным API
  • функцию rand,
    которая генерирует случайные числа из равномерного распределения
  • функцию randn,
    которая генерирует числа из стандартного нормального распределения
  • функцию randint,
    которая генерирует случайные целые числа из заданного диапазона
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить