Как отфильтровать данные в pandas dataframe 🧐 | Инструкция по фильтрации данных в pandas dataframe 📊

Чтобы отфильтровать данные в DataFrame с использованием библиотеки pandas, вы можете использовать метод query() или методы индексации. Вот примеры:


# Использование метода query()
df_filtered = df.query('column_name == value')

# Использование индексации
df_filtered = df[df['column_name'] == value]
    

Здесь df - ваш DataFrame, column_name - имя столбца, value - значение, которое вы хотите отфильтровать.

Детальный ответ

Как фильтровать данные в pandas DataFrame?

Фильтрация данных в pandas DataFrame - это процесс выбора только тех строк, которые соответствуют определенным условиям. В pandas существует несколько способов выполнить фильтрацию данных. В этой статье мы исследуем основные методы фильтрации данных в pandas DataFrame с использованием примеров кода.

1. Использование условий

Один из наиболее распространенных способов фильтрации данных в pandas DataFrame - это использование условий для выборки строк, которые удовлетворяют определенным критериям. Для этого можно использовать операторы сравнения, такие как равенство (==), неравенство (!=), больше (>), меньше (<), больше или равно (>=) и меньше или равно (<=).


import pandas as pd

# Создание DataFrame
data = {'name': ['John', 'Kate', 'Mike', 'Emily'],
        'age': [25, 30, 35, 28]}

df = pd.DataFrame(data)

# Фильтрация данных по условию возраста больше 30
filtered_df = df[df['age'] > 30]

print(filtered_df)
    

В результате выполнения этого кода будут отображены только строки, в которых возраст больше 30.

2. Использование метода query

Метод query в pandas DataFrame позволяет выполнить фильтрацию данных с использованием строкового выражения. Этот метод может быть удобным, если вы хотите выполнить сложные условия фильтрации.


import pandas as pd

# Создание DataFrame
data = {'name': ['John', 'Kate', 'Mike', 'Emily'],
        'age': [25, 30, 35, 28]}

df = pd.DataFrame(data)

# Фильтрация данных с использованием метода query
filtered_df = df.query('age > 30')

print(filtered_df)
    

В результате выполнения этого кода будут отображены только строки, в которых возраст больше 30.

3. Использование метода loc

Метод loc в pandas DataFrame позволяет выполнить фильтрацию данных на основе меток строк и столбцов. Вы можете использовать этот метод для выборки строк, удовлетворяющих определенным условиям.


import pandas as pd

# Создание DataFrame
data = {'name': ['John', 'Kate', 'Mike', 'Emily'],
        'age': [25, 30, 35, 28]}

df = pd.DataFrame(data)

# Фильтрация данных с использованием метода loc
filtered_df = df.loc[df['age'] > 30]

print(filtered_df)
    

В результате выполнения этого кода будут отображены только строки, в которых возраст больше 30.

4. Использование метода isin

Метод isin в pandas DataFrame позволяет выполнить фильтрацию данных на основе списка значений. Вы можете использовать этот метод для выборки строк, содержащих определенные значения.


import pandas as pd

# Создание DataFrame
data = {'name': ['John', 'Kate', 'Mike', 'Emily'],
        'age': [25, 30, 35, 28]}

df = pd.DataFrame(data)

# Фильтрация данных с использованием метода isin
filtered_df = df[df['name'].isin(['John', 'Emily'])]

print(filtered_df)
    

В результате выполнения этого кода будут отображены только строки, содержащие имена 'John' и 'Emily'.

5. Использование метода between

Метод between в pandas DataFrame позволяет выполнить фильтрацию данных на основе диапазона значений. Вы можете использовать этот метод для выборки строк, значения в которых находятся в определенном диапазоне.


import pandas as pd

# Создание DataFrame
data = {'name': ['John', 'Kate', 'Mike', 'Emily'],
        'age': [25, 30, 35, 28]}

df = pd.DataFrame(data)

# Фильтрация данных с использованием метода between
filtered_df = df[df['age'].between(25, 30)]

print(filtered_df)
    

В результате выполнения этого кода будут отображены только строки, в которых возраст находится в диапазоне от 25 до 30.

6. Использование метода filter

Метод filter в pandas DataFrame позволяет выполнить фильтрацию данных на основе имен столбцов. Вы можете использовать этот метод для выборки столбцов, удовлетворяющих определенным условиям.


import pandas as pd

# Создание DataFrame
data = {'name': ['John', 'Kate', 'Mike', 'Emily'],
        'age': [25, 30, 35, 28],
        'gender': ['male', 'female', 'male', 'female']}

df = pd.DataFrame(data)

# Фильтрация данных с использованием метода filter
filtered_df = df.filter(like='a')

print(filtered_df)
    

В результате выполнения этого кода будут отображены только столбцы, содержащие букву 'a' в своем имени.

Заключение

Фильтрация данных в pandas DataFrame - это мощный инструмент, который позволяет выбирать только те данные, которые соответствуют определенным условиям. В этой статье мы рассмотрели несколько основных методов фильтрации данных в pandas, включая использование условий, метода query, метода loc, метода isin, метода between и метода filter. Надеюсь, вы найдете эти примеры полезными при работе с pandas DataFrame.

Видео по теме

Python Pandas Tutorial (Part 4): Filtering - Using Conditionals to Filter Rows and Columns

Filtering Columns and Rows in Pandas | Python Pandas Tutorials

How to filter a pandas DataFrame | 6 HELPFUL METHODS

Похожие статьи:

Как сделать столбец индексом в pandas? 🔑🐼

Как отфильтровать данные в pandas dataframe 🧐 | Инструкция по фильтрации данных в pandas dataframe 📊