pandas.Series.sample#
- Series.sample(n=None, frac=None, replace=False, веса=None, random_state=None, ось=None, ignore_index=False)[источник]#
Вернуть случайную выборку элементов из оси объекта.
Вы можете использовать random_state для воспроизводимости.
- Параметры:
- nint, необязательный
Количество элементов для возврата с оси. Нельзя использовать с frac. По умолчанию = 1, если frac = None.
- fracfloat, опционально
Доля элементов оси для возврата. Нельзя использовать с n.
- replacebool, по умолчанию False
Разрешить или запретить выборку одной и той же строки более одного раза.
- весаstr или ndarray-like, optional
Значение по умолчанию 'None' приводит к равномерному взвешиванию вероятностей. Если передана Series, будет выполнено выравнивание с целевым объектом по индексу. Значения индекса в весах, не найденные в объекте выборки, будут проигнорированы, а значения индекса в объекте выборки, отсутствующие в весах, будут назначены веса, равные нулю. Если вызвано на DataFrame, будет принято имя столбца при axis = 0. Если веса не являются Series, они должны иметь ту же длину, что и ось, по которой производится выборка. Если сумма весов не равна 1, они будут нормализованы к сумме 1. Пропущенные значения в столбце весов будут обработаны как нули. Бесконечные значения не допускаются.
- random_stateint, array-like, BitGenerator, np.random.RandomState, np.random.Generator, optional
Если int, array-like или BitGenerator, начальное значение для генератора случайных чисел. Если np.random.RandomState или np.random.Generator, использовать как есть.
Изменено в версии 1.4.0: np.random.Generator объекты теперь принимаются
- ось{0 или 'index', 1 или 'columns', None}, по умолчанию None
Ось для выборки. Принимает номер оси или имя. По умолчанию — статистическая ось для данного типа данных. Для Series этот параметр не используется и по умолчанию равен None.
- ignore_indexbool, по умолчанию False
Если True, результирующий индекс будет помечен как 0, 1, …, n - 1.
Добавлено в версии 1.3.0.
- Возвращает:
- Series или DataFrame
Новый объект того же типа, что и вызывающий, содержащий n элементы, случайно выбранные из вызывающего объекта.
Смотрите также
DataFrameGroupBy.sampleГенерирует случайные выборки из каждой группы объекта DataFrame.
SeriesGroupBy.sampleГенерирует случайные выборки из каждой группы объекта Series.
numpy.random.choiceГенерирует случайную выборку из заданного 1-D массива numpy.
Примечания
Если frac > 1, замена должно быть установлено в True.
Примеры
>>> df = pd.DataFrame({'num_legs': [2, 4, 8, 0], ... 'num_wings': [2, 0, 0, 0], ... 'num_specimen_seen': [10, 2, 1, 8]}, ... index=['falcon', 'dog', 'spider', 'fish']) >>> df num_legs num_wings num_specimen_seen falcon 2 2 10 dog 4 0 2 spider 8 0 1 fish 0 0 8
Извлечь 3 случайных элемента из
Seriesdf['num_legs']: Обратите внимание, что мы используем random_state для обеспечения воспроизводимости примеров.>>> df['num_legs'].sample(n=3, random_state=1) fish 0 spider 8 falcon 2 Name: num_legs, dtype: int64
Случайная 50% выборка из
DataFrameс заменой:>>> df.sample(frac=0.5, replace=True, random_state=1) num_legs num_wings num_specimen_seen dog 4 0 2 fish 0 0 8
Повышенная выборка
DataFrameс заменой: Обратите внимание, что replace параметр должен быть True для frac параметр > 1.>>> df.sample(frac=2, replace=True, random_state=1) num_legs num_wings num_specimen_seen dog 4 0 2 fish 0 0 8 falcon 2 2 10 falcon 2 2 10 fish 0 0 8 dog 4 0 2 fish 0 0 8 dog 4 0 2
Использование столбца DataFrame в качестве весов. Строки с большим значением в num_specimen_seen столбец с большей вероятностью будет выбран.
>>> df.sample(n=2, weights='num_specimen_seen', random_state=1) num_legs num_wings num_specimen_seen falcon 2 2 10 fish 0 0 8