Pandas — это мощная библиотека манипулирования данными на Python, предоставляющая множество методов для работы с табличными данными. Одной из распространенных задач является извлечение определенных строк из DataFrame на основе определенных условий или критериев. В этой статье блога мы углубимся в различные методы получения строк с помощью pandas и рассмотрим примеры кода, иллюстрирующие каждый подход.
Метод 1: использование логического индексирования
Один простой метод получения строк в pandas — использование логического индексирования. Этот подход предполагает создание логического условия, которое оценивается как True
для нужных строк и False
для остальных. Давайте рассмотрим пример, где у нас есть DataFrame с именем df
:
desired_rows = df[df['column_name'] == 'desired_value']
.
В приведенном выше фрагменте кода мы создаем логическое условие, сравнивая значения в столбце «имя_столбца» с «желаемым_значением». Результирующий DataFrame, desired_rows
, будет содержать только те строки, которые соответствуют условию.
Метод 2: использование функции loc()
Функция loc()
в pandas позволяет нам извлекать строки на основе индексации на основе меток. Он предоставляет гибкий способ разрезать DataFrame и выбрать определенные строки. Вот пример:
desired_rows = df.loc[df['column_name'] == 'desired_value']
Функция loc()
принимает логическое условие в качестве аргумента и возвращает DataFrame, содержащий строки, удовлетворяющие этому условию.
Метод 3: использование функции iloc()
Функция iloc()
аналогична loc()
, но она использует индексацию на основе целых чисел, а не меток. Это позволяет нам получать строки по их положению в DataFrame. Рассмотрим следующий пример:
desired_rows = df.iloc[2:5]
В приведенном выше фрагменте кода мы извлекаем строки со 2 по 4 (исключительно) из DataFrame df
и сохраняем их в переменной desired_rows
.
Метод 4: использование Query()
Pandas также предоставляет метод query()
, который позволяет нам получать строки на основе строки запроса. Этот метод особенно полезен при работе с большими наборами данных. Вот пример:
desired_rows = df.query('column_name == "desired_value"')
Метод query()
оценивает строку запроса и возвращает DataFrame, содержащий строки, соответствующие условию.
В этой статье блога мы рассмотрели несколько методов получения определенных строк из DataFrame pandas. Мы рассмотрели булеву индексацию, функцию loc()
для индексации на основе меток, функцию iloc()
для индексации на основе целых чисел и метод query()
для запроса. данные. Освоив эти методы, вы сможете эффективно извлекать строки, необходимые для задач анализа данных.