正则表达式(Regular Expression)是一种用于匹配字符串模式的强大工具。它由一系列字符和特殊符号组成,用于定义字符串的搜索模式。
Pandas DataFrame 是一个二维标签数据结构,类似于表格或 SQL 表,包含行和列。
假设我们有一个 Pandas DataFrame,其中一列包含字符串,我们需要筛选出所有以特定字符开头并以数字结尾的字符串。
import pandas as pd
import re
# 创建示例 DataFrame
data = {
'strings': ['apple1', 'banana2', 'cherry3', 'date4', 'fig5', 'grape6']
}
df = pd.DataFrame(data)
# 定义正则表达式
pattern = r'^[a-z]+[0-9]$'
# 使用正则表达式筛选 DataFrame
filtered_df = df[df['strings'].apply(lambda x: bool(re.match(pattern, x)))]
print(filtered_df)
^[a-z]+[0-9]$
:这个正则表达式的含义是:^
:字符串开头。[a-z]+
:一个或多个小写字母。[0-9]
:一个数字。$
:字符串结尾。df['strings'].apply(lambda x: bool(re.match(pattern, x)))
:这行代码对 DataFrame 中的每一行应用正则表达式匹配,返回一个布尔值序列,表示每一行是否匹配成功。通过这种方式,你可以有效地筛选出符合条件的字符串,并进行进一步的数据处理和分析。
领取专属 10元无门槛券
手把手带您无忧上云