Spec-Zone.ru › pandas 0.23

pandas.Panel.sample

Panel.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, необязательно

Зерно для генератора случайных чисел (если 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

Для воспроизводимости можно использовать 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.Panel.sample.html

Spec-Zone.ru

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