pandas.DataFrame.sample
-
DataFrame.sample(self, n=None, frac=None, replace=False, weights=None, random_state=None, axis=None)[source] -
Возвращает случайную выборку элементов из оси объекта.
Можно использовать
random_stateдля воспроизводимости.Параметры: -
n : int, optional -
Количество элементов с оси для возврата. Не может быть использовано с
frac. По умолчанию = 1, еслиfrac= None. -
frac : float, optional -
Доля элементов оси для возврата. Не может быть использовано с
n. -
replace : bool, default False -
Выборка с заменой или без.
-
weights : str or ndarray-like, optional -
Значение по умолчанию ‘None’ приводит к одинаковому весу вероятности. Если передана Series, будет выровнена с целевым объектом по индексу. Значения индекса в весах, отсутствующие в выбранном объекте, будут игнорироваться, а значения индекса в выбранном объекте, отсутствующие в весах, будут присвоены весу 0. Если вызывается для DataFrame, будет приниматься имя столбца при axis = 0. За исключением случаев, когда weights — Series, weights должны иметь такую же длину, как и ось, которая подвергается выборке. Если сумма весов не равна 1, они будут нормализованы до суммы 1. Пропущенные значения в столбце весов будут обрабатываться как ноль. Бесконечные значения не допускаются.
-
random_state : int or numpy.random.RandomState, optional -
Зерно для генератора случайных чисел (если целое число) или объект numpy RandomState.
-
axis : int or string, optional -
Ось для выборки. Принимает номер оси или имя. По умолчанию используется статистическая ось для данного типа данных (0 для Series и DataFrame).
Возвращает: - Series или DataFrame
-
Новый объект того же типа, что и вызывающий, содержащий
nэлементов, случайным образом выбранных из вызывающего объекта.
См. также
-
numpy.random.choice - Генерирует случайную выборку из заданного одномерного массива numpy.
Примеры
>>> 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 в качестве весов. Строки с большим значением в столбце
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 -
© 2008–2012, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
Licensed under the 3-clause BSD License.
https://pandas.pydata.org/pandas-docs/version/0.25.0/reference/api/pandas.DataFrame.sample.html