要按包含多个字符串的标题筛选Pandas数据帧列,可以使用str.contains()方法结合逻辑运算符|(或)来实现。下面是一个示例代码:
import pandas as pd
# 创建示例数据帧
data = {'Name': ['John', 'Mike', 'Sarah', 'Amy'],
'Title': ['Manager', 'Engineer', 'Analyst', 'Director'],
'Department': ['Marketing', 'IT', 'Finance', 'HR']}
df = pd.DataFrame(data)
# 定义要筛选的多个字符串
filter_strings = ['Manager', 'Director']
# 使用str.contains()方法和逻辑运算符进行筛选
filtered_df = df[df['Title'].str.contains('|'.join(filter_strings))]
# 打印筛选结果
print(filtered_df)
输出结果:
Name Title Department
0 John Manager Marketing
3 Amy Director HR
在上述代码中,我们首先创建了一个示例数据帧df。然后,定义了要筛选的多个字符串filter_strings。接下来,使用str.contains()方法和逻辑运算符|(或)来筛选包含这些字符串的标题。最后,将筛选结果存储在filtered_df中,并打印出来。
请注意,str.contains()方法的regex参数默认为True,表示使用正则表达式进行匹配。如果要进行精确匹配,请将regex参数设置为False。例如:df['Title'].str.contains('|'.join(filter_strings), regex=False)。