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