Фильтрация данных — важнейший этап в задачах анализа и манипулирования данными. Pandas, мощная библиотека манипулирования данными на Python, предоставляет различные методы фильтрации данных. Среди этих методов использование регулярных выражений (регулярных выражений) предлагает гибкий и эффективный подход к фильтрации данных на основе определенных шаблонов. В этой статье мы рассмотрим несколько методов применения фильтров регулярных выражений в Pandas, сопровождаемых примерами кода.
- Использование метода
str.contains():
Методstr.contains()позволяет нам проверить, существует ли шаблон в столбце Series или DataFrame. Он возвращает логическую маску, указывающую строки, соответствующие шаблону регулярного выражения.
import pandas as pd
# Create a sample DataFrame
data = {'Name': ['John', 'Alice', 'Bob', 'Charlie'],
'Age': [25, 32, 28, 30]}
df = pd.DataFrame(data)
# Filter rows where the Name starts with 'A'
filtered_df = df[df['Name'].str.contains('^A')]
print(filtered_df)
- Применение регулярного выражения с помощью
str.extract():
Методstr.extract()позволяет нам извлекать определенные подстроки из столбца Series или DataFrame на основе шаблонов регулярных выражений. Он возвращает новый столбец, содержащий извлеченные значения.
import pandas as pd
# Create a sample DataFrame
data = {'Text': ['OpenAI is amazing!', 'Python is versatile.', 'Regex is powerful.']}
df = pd.DataFrame(data)
# Extract words starting with 'is' from the Text column
df['Extracted'] = df['Text'].str.extract(r'(is\w+)')
print(df)
- Использование метода
str.match():
Методstr.match()проверяет, соответствует ли начало каждой строки в столбце Series или DataFrame шаблону регулярного выражения. Он возвращает логическую маску, указывающую соответствующие строки.
import pandas as pd
# Create a sample DataFrame
data = {'Text': ['OpenAI is amazing!', 'Python is versatile.', 'Regex is powerful.']}
df = pd.DataFrame(data)
# Filter rows where the Text starts with 'Open'
filtered_df = df[df['Text'].str.match('^Open')]
print(filtered_df)
- Применение регулярного выражения с помощью
str.replace():
Методstr.replace()позволяет нам заменять подстроки в столбце Series или DataFrame на основе шаблонов регулярных выражений.
import pandas as pd
# Create a sample DataFrame
data = {'Text': ['OpenAI is amazing!', 'Python is versatile.', 'Regex is powerful.']}
df = pd.DataFrame(data)
# Replace 'is' with 'was' in the Text column
df['Modified'] = df['Text'].str.replace(r'is', 'was')
print(df)
В этой статье мы рассмотрели в Pandas различные методы применения фильтров регулярных выражений для эффективной фильтрации и манипулирования данными. Используя возможности регулярных выражений, вы можете извлекать, сопоставлять и заменять данные на основе определенных шаблонов, предоставляя универсальный набор инструментов для задач анализа и манипулирования данными.
Не забывайте использовать эти методы разумно и адаптировать их к вашим конкретным случаям использования. Имея в своем распоряжении эти методы, вы сможете эффективно фильтровать и обрабатывать данные, чтобы получать ценную информацию.