Spec-Zone.ru › pandas 0.19

pandas.DataFrame.sample

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

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

Введено в версии 0.16.1.

Параметры:

n : int, необязательно

Количество элементов из оси для возврата. Не может использоваться с frac. По умолчанию = 1, если frac = None.

frac : float, необязательно

Доля элементов оси для возврата. Не может использоваться с n.

replace : boolean, необязательно

Выборка с возвратом или без возврата. По умолчанию = False.

weights : str или ndarray-подобный объект, необязательно

По умолчанию ‘None’ приводит к равномерному взвешиванию вероятностей. Если передана Series, она будет согласована с целевым объектом по индексу. Значения индекса в весах, которых нет в выборке, будут проигнорированы, а значения индекса в выборке, которых нет в весах, будут присвоены весу 0. Если вызывается для DataFrame, будет принят имя столбца, когда ось = 0. Если весы не являются Series, весы должны иметь ту же длину, что и ось, из которой осуществляется выборка. Если весы не суммируются до 1, они будут нормализованы до суммы 1. Пропущенные значения в столбце весов будут обрабатываться как 0. Значения inf и -inf недопустимы.

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

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

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

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

Возвращает:

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

Примеры

Создайте пример 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.19.2/generated/pandas.DataFrame.sample.html

Spec-Zone.ru

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