Spec-Zone.ru › pandas 0.21

pandas.DataFrame.sample

DataFrame.sample(n=None, frac=None, replace=False, weights=None, random_state=None, axis=None) [source]

Возвращает случайную выборку элементов из оси объекта.

Параметры:

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. Пропущенные значения в столбце весов будут обрабатываться как ноль. значения inf и -inf не допускаются.

random_state : int или numpy.random.RandomState, необязательно

Зерно для генератора случайных чисел (если int) или объект numpy RandomState.

axis : int или строка, необязательно

Ось для выборки. Принимает номер или имя оси. По умолчанию — статистическая ось для данного типа данных (0 для Series и DataFrame, 1 для Panel).

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

Новый объект того же типа, что и вызывающий.

Примеры

Создайте пример 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

© 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.21.1/generated/pandas.DataFrame.sample.html

Spec-Zone.ru

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