Spec-Zone.ru › NumPy 1.10

numpy.random.choice

numpy.random.choice(a, size=None, replace=True, p=None)

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

Новая в версии 1.7.0.

Параметры:

a : одномерный массив-подобный объект или целое число

Если массив NumPy, случайная выборка генерируется из его элементов. Если целое число, случайная выборка генерируется как будто a - это np.arange(n)

size : целое число или кортеж целых чисел, необязательно

Форма выходных данных. Если заданная форма, например, (m, n, k), то m * n * k элементов извлекаются. По умолчанию None, в этом случае возвращается единственное значение.

replace : булево значение, необязательно

Включает ли выборка возврат элементов

p : одномерный массив-подобный объект, необязательно

Вероятности, связанные с каждым элементом в a. Если не задано, выборка предполагает равномерное распределение по всем элементам в a.

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

samples : одномерный массив NumPy, форма (size,)

Сгенерированные случайные выборки

Исключения:

ValueError

Если a - целое число меньше нуля, если a или p не одномерные, если a - массив-подобный объект размера 0, если p не является вектором вероятностей, если a и p имеют разные длины или если replace=False и размер выборки больше размера генеральной совокупности

См. также

randint, shuffle, permutation

Примеры

Генерирует случайную равномерную выборку из np.arange(5) размера 3:

>>> np.random.choice(5, 3)
array([0, 3, 4])
>>> #This is equivalent to np.random.randint(0,5,3)

Генерирует случайную неравномерную выборку из np.arange(5) размера 3:

>>> np.random.choice(5, 3, p=[0.1, 0, 0.3, 0.6, 0])
array([3, 3, 0])

Генерирует случайную равномерную выборку из np.arange(5) размера 3 без возврата:

>>> np.random.choice(5, 3, replace=False)
array([3,1,0])
>>> #This is equivalent to np.random.permutation(np.arange(5))[:3]

Генерирует случайную неравномерную выборку из np.arange(5) размера 3 без возврата:

>>> np.random.choice(5, 3, replace=False, p=[0.1, 0, 0.3, 0.6, 0])
array([2, 3, 0])

Любое из вышеперечисленного можно повторить с любым массивоподобным объектом вместо только целых чисел. Например:

>>> aa_milne_arr = ['pooh', 'rabbit', 'piglet', 'Christopher']
>>> np.random.choice(aa_milne_arr, 5, p=[0.5, 0.1, 0.1, 0.3])
array(['pooh', 'pooh', 'pooh', 'Christopher', 'piglet'],
      dtype='|S11')

© 2008–2016 NumPy Developers
Licensed under the NumPy License.
https://docs.scipy.org/doc/numpy-1.10.1/reference/generated/numpy.random.choice.html

Spec-Zone.ru

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