pandas.DataFrame.take
-
DataFrame.take(indices, axis=0, convert=None, is_copy=True, **kwargs)[source] -
Возвращает элементы по заданным позиционным индексам вдоль оси.
Это означает, что мы не индексируем по фактическим значениям в атрибуте индекса объекта. Мы индексируем по фактическому положению элемента в объекте.
Параметры: indices : массив-подобный объект
Массив целых чисел, указывающий, какие позиции нужно взять.
axis : целое число, по умолчанию 0
Ось, на которой нужно выбрать элементы. «0» означает, что мы выбираем строки, «1» означает, что мы выбираем столбцы и т.д.
convert : булево значение, по умолчанию True
Устарело начиная с версии 0.21.0: В будущем отрицательные индексы всегда будут преобразовываться.
Преобразовывать ли отрицательные индексы в положительные. Например,
-1будет соответствоватьlen(axis) - 1. Преобразования аналогичны поведению индексирования обычного списка Python.is_copy : булево значение, по умолчанию True
Возвращать копию исходного объекта или нет.
Возвращает: taken : тип вызывающего объекта
Массив-подобный объект, содержащий элементы, взятые из объекта.
См. также
Примеры
>>> 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]) 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.22.0/generated/pandas.DataFrame.take.html