• Автор записи:
  • Рубрика записи:Pandas
  • Время чтения:2 минут чтения
  • Комментарии к записи:0 комментариев

Чтобы найти индекс значения в pandas в Python, можно использовать несколько методов. Свойство .index извлекает индекс, в котором выполняется условие, а index.values возвращает эти индексы в виде массива NumPy.

Функция tolist() преобразует индексы в список Python для упрощения итерации, а функция np.where() эффективно находит индексы для условий соответствия, что особенно полезно для больших наборов данных.

Существует четыре различных метода.

Содержание

Используя свойство .index

Свойство .index в pandas используется для получения индексов строк в DataFrame или Series, соответствующих заданному условию.

Это простой метод Python, с помощью которого мы можем применить условие к DataFrame или Series и использовать .index для получения индексов, в которых это условие истинно.

Таким образом, мы можем использовать свойство .index, чтобы Pandas находил индекс значения в Python:

import pandas as pd

df = pd.DataFrame({'State': ['New York', 'California', 'Texas'],
                   'Population': [19450000, 39560000, 29000000]})
index_of_california = df[df['State'] == 'California'].index
print(index_of_california)

Выход:

Index([1], dtype='int64')

После выполнения кода в редакторе Pycharm ниже представлен снимок экрана, иллюстрирующий результат.

Используя свойство .index

Используя index.values

index.values преобразует индексы, полученные из условия, в массив NumPy в Python. Это особенно полезно, когда нам нужны индексы в формате, совместимом с операциями NumPy, или для дальнейших манипуляций с массивами.

Вот код, который мы можем использовать index.values, чтобы Pandas находил индекс значения в Python:

import pandas as pd

df = pd.DataFrame({'City': ['Los Angeles', 'Chicago', 'Houston'],
                   'Average Temperature(F)': [66, 50, 70]})
index_of_chicago = df[df['City'] == 'Chicago'].index.values
print(index_of_chicago)

Выход:

[1]

После завершения выполнения кода в Pycharm полученный результат виден на снимке экрана, представленном ниже.

Используя index.values

С помощью функции tolist()

Функция tolist() используется для преобразования индексов, полученных в результате условной проверки в pandas, в стандартный список Python.

Этот метод удобен, когда нам нужны индексы в формате списка, возможно, для перебора по ним или для других операций на основе списка.

Это код, который рассказывает, как использовать функцию tolist() для поиска индекса значения Pandas в Python:

import pandas as pd

df = pd.DataFrame({'University': ['Harvard University', 'Stanford University', 'MIT'],
                   'Founded': [1636, 1885, 1861]})
index_of_harvard = df[df['University'] == 'Harvard University'].index.tolist()
print(index_of_harvard)

Выход:

[0]

На снимке экрана ниже показан результат, полученный после реализации и запуска кода в редакторе Pycharm.

С помощью функции tolist()

С помощью функции np.where()

Функция np.where() — это универсальный инструмент для поиска индексов элементов, соответствующих определенному условию, в DataFrame или Series панд в Python. Он возвращает индексы в виде массива NumPy и особенно эффективен для больших наборов данных, предлагая более производительную альтернативу собственным методам pandas.

Вот код для использования функции np.where(), Pandas находит индекс значения в Python:

import pandas as pd
import numpy as np

df = pd.DataFrame({'Airline': ['American Airlines', 'Delta Air Lines', 'United Airlines'],
                   'Destinations': [350, 325, 342]})
index_of_delta = np.where(df['Airline'] == 'Delta Air Lines')[0]
print(index_of_delta)

Выход:

[1]

На следующем снимке экрана показан результат работы кода, реализованного в редакторе Pycharm.

С помощью функции tolist()

Заключение

Здесь я проиллюстрировал различные методы поиска индекса значения в pandas в Python. К ним относятся использование свойства .index для прямого получения индекса, index.values для получения массива индексов NumPy, функции tolist() для преобразования индексов в список и функции np.where() для идентификации индексов в сложных или больших наборы данных.

Добавить комментарий