【869】dataframe通过包含字符过滤 str.contains()

发布时间 2023-08-12 07:35:37作者: McDelfino

ref: [Pandas] 文本包含.str.contains()


import pandas as pd
 
df = pd.DataFrame([['liver','E',89,21,24,64],
                   ['Arry','C',36,37,37,57],
                   ['Ack','A',57,60,18,84],
                   ['Eorge','C',93,96,71,78],
                   ['Oah','D',65,49,61,86]
                  ], 
                   columns = ['name','team','Q1','Q2','Q3','Q4'])
 
# 名字包含A字母
res1 = df.loc[df.name.str.contains('A')]
# 名字包含A字母或E字母
res2 = df.loc[df.name.str.contains('A|E')]
# 忽略大小写
import re
res3 = df.loc[df.name.str.contains('A|E', flags = re.IGNORECASE)]
# 包含数字
res4 = df.loc[df.name.str.contains('\d')]