sample_without_replacement#

sklearn.utils.random.sample_without_replacement(n_population, n_samples, метод='auto', random_state=None)#

Выборка целых чисел без замены.

Выберите n_samples целых чисел из множества [0, n_population) без замены.

Параметры:
n_populationint

Размер набора, из которого производится выборка.

n_samplesint

Количество целых чисел для выборки.

random_stateint, экземпляр RandomState или None, по умолчанию=None

Если int, random_state — это сид, используемый генератором случайных чисел; Если экземпляр RandomState, random_state — это генератор случайных чисел; Если None, генератор случайных чисел — это экземпляр RandomState, используемый np.random.

метод{“auto”, “tracking_selection”, “reservoir_sampling”, “pool”}, default=’auto’

Если method == "auto", отношение n_samples / n_population используется для определения, какой алгоритм использовать: если отношение находится между 0 и 0.01, используется отслеживающий выбор. Если отношение находится между 0.01 и 0.99, используется numpy.random.permutation. Если отношение больше 0.99, используется выборка из резервуара. Порядок выбранных целых чисел не определён. Если требуется случайный порядок, выбранное подмножество следует перемешать.

Если method =="tracking_selection", используется реализация на основе множества, которая подходит для n_samples <<< n_population.

Если method == “reservoir_sampling”, используется алгоритм резервуарной выборки, который подходит для ограничений по памяти или когда O(n_samples) ~ O(n_population). Порядок выбранных целых чисел не определен. Если требуется случайный порядок, выбранное подмножество должно быть перемешано.

Если method == "pool", алгоритм на основе пула особенно быстр, даже быстрее метода отслеживающего выбора. Однако вектор, содержащий всю популяцию, должен быть инициализирован. Если n_samples ~ n_population, метод резервуарной выборки быстрее.

Возвращает:
выходndarray формы (n_samples,)

Выбранные подмножества целых чисел. Подмножество выбранных целых чисел может не быть рандомизированным, см. аргумент method.

Примеры

>>> from sklearn.utils.random import sample_without_replacement
>>> sample_without_replacement(10, 5, random_state=42)
array([8, 1, 5, 0, 7])