pandas.Series.sample
-
Series.sample(n=None, frac=None, replace=False, weights=None, random_state=None, axis=None)[source] -
Возвращает случайную выборку элементов из оси объекта.
Вы можете использовать
random_stateдля воспроизводимости.Параметры: n : int, необязательно
Количество элементов с оси для возврата. Не может использоваться с
frac. По умолчанию = 1, еслиfrac= None.frac : float, необязательно
Доля элементов оси для возврата. Не может использоваться с
n.replace : boolean, необязательно
Выборка с заменой или без неё. По умолчанию = False.
weights : str или ndarray-подобный объект, необязательно
Значение по умолчанию ‘None’ приводит к равномерному весу вероятности. Если передается Series, будет согласован с целевым объектом по индексу. Значения индекса в weights, которых нет в образце объекта, будут проигнорированы, а значениям индекса в образце объекта, которых нет в weights, будет назначен вес нуль. Если вызывается на DataFrame, примет имя столбца при axis = 0. Если weights не является Series, weights должны иметь тот же размер, что и ось, с которой производится выборка. Если сумма весов не равна 1, они будут нормализованы до суммы 1. Пропущенные значения в столбце weights будут обрабатываться как ноль. Значения inf и -inf недопустимы.
random_state : int или numpy.random.RandomState, необязательно
Зерно для генератора псевдослучайных чисел (если целое число) или объект numpy RandomState.
axis : int или строка, необязательно
Ось для выборки. Принимает номер оси или имя. По умолчанию — статическая ось для данного типа данных (0 для Series и DataFrame, 1 для Panels).
Возвращаемое значение: - Новый объект того же типа, что и вызывающий объект.
Примеры
Сгенерировать пример
SeriesиDataFrame:>>> s = pd.Series(np.random.randn(50)) >>> s.head() 0 -0.038497 1 1.820773 2 -0.972766 3 -1.598270 4 -1.095526 dtype: float64 >>> df = pd.DataFrame(np.random.randn(50, 4), columns=list('ABCD')) >>> df.head() A B C D 0 0.016443 -2.318952 -0.566372 -1.028078 1 -1.051921 0.438836 0.658280 -0.175797 2 -1.243569 -0.364626 -0.215065 0.057736 3 1.768216 0.404512 -0.385604 -1.457834 4 1.072446 -1.137172 0.314194 -0.046661Далее извлечь случайную выборку из обоих этих объектов…
3 случайных элемента из
Series:>>> s.sample(n=3) 27 -0.994689 55 -1.049016 67 -0.224565 dtype: float64
И 10% случайных элементов
DataFrameс заменой:>>> df.sample(frac=0.1, replace=True) A B C D 35 1.981780 0.142106 1.817165 -0.290805 49 -1.336199 -0.448634 -0.789640 0.217116 40 0.823173 -0.078816 1.009536 1.015108 15 1.421154 -0.055301 -1.922594 -0.019696 6 -0.148339 0.832938 1.787600 -1.383767Вы можете использовать
random stateдля воспроизводимости:>>> df.sample(random_state=1) A B C D 37 -2.027662 0.103611 0.237496 -0.165867 43 -0.259323 -0.583426 1.516140 -0.479118 12 -1.686325 -0.579510 0.985195 -0.460286 8 1.167946 0.429082 1.215742 -1.636041 9 1.197475 -0.864188 1.554031 -1.505264
© 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.23.4/generated/pandas.Series.sample.html