Spec-Zone.ru › pandas 0.24

pandas.Series.take

Series.take(indices, axis=0, convert=None, is_copy=True, **kwargs) [source]

Возвращает элементы по заданным порядковым индексам вдоль оси.

Это означает, что мы не индексируем по фактическим значениям в атрибуте индекса объекта. Мы индексируем по фактическому положению элемента в объекте.

Параметры:
indices : array-like

Массив целых чисел, указывающий, какие позиции следует выбрать.

axis : {0 or ‘index’, 1 or ‘columns’, None}, default 0

Ось, по которой следует выбрать элементы. 0 означает, что мы выбираем строки, 1 означает, что мы выбираем столбцы.

convert : bool, default True

Нужно ли преобразовать отрицательные индексы в положительные. Например, -1 будет отображаться как len(axis) - 1. Преобразования аналогичны поведению индексирования обычного списка Python.

Устаревшее начиная с версии 0.21.0: В будущем отрицательные индексы всегда будут преобразовываться.

is_copy : bool, default True

Нужно ли вернуть копию исходного объекта или нет.

**kwargs

Для совместимости с numpy.take(). Не оказывает влияния на результат.

Возвращает:
taken : same type as caller

Массивоподобный объект, содержащий выбранные из объекта элементы.

См. также

DataFrame.loc
Выбор подмножества DataFrame по меткам.
DataFrame.iloc
Выбор подмножества DataFrame по позициям.
numpy.take
Выбор элементов из массива вдоль оси.

Примеры

>>> df = pd.DataFrame([('falcon', 'bird',    389.0),
...                    ('parrot', 'bird',     24.0),
...                    ('lion',   'mammal',   80.5),
...                    ('monkey', 'mammal', np.nan)],
...                    columns=['name', 'class', 'max_speed'],
...                    index=[0, 2, 3, 1])
>>> df
     name   class  max_speed
0  falcon    bird      389.0
2  parrot    bird       24.0
3    lion  mammal       80.5
1  monkey  mammal        NaN

Выбор элементов в позициях 0 и 3 вдоль оси 0 (по умолчанию).

Обратите внимание, как фактические выбранные индексы (0 и 1) не соответствуют выбранным нами индексам 0 и 3. Это потому, что мы выбираем 0-ю и 3-ю строки, а не строки, индексы которых равны 0 и 3.

>>> df.take([0, 3])
     name   class  max_speed
0  falcon    bird      389.0
1  monkey  mammal        NaN

Выбор элементов в позициях 1 и 2 вдоль оси 1 (выбор столбцов).

>>> df.take([1, 2], axis=1)
    class  max_speed
0    bird      389.0
2    bird       24.0
3  mammal       80.5
1  mammal        NaN

Мы можем выбрать элементы с помощью отрицательных целых чисел для положительных индексов, начиная с конца объекта, как и в списках Python.

>>> df.take([-1, -2])
     name   class  max_speed
1  monkey  mammal        NaN
3    lion  mammal       80.5

© 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.24.2/reference/api/pandas.Series.take.html

Spec-Zone.ru

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