有时候需要删除数据表中某一列中包含指定字符串的行,可以使用pandas的字符串包含函数.str.contains:
pd.Series.str.contains(pat, case=True, flags=0, na=None, regex=True)
#pat是搜索字符,case表示是否区分大小写,flags表示是否传递给 re 模块的标志,regex=True则pat是一个正则表达式,regex=False表示pat是一个字符串
示例:提取pandas dataframe中’商品名称‘列包含’手机’字符的所有数据:
#提取含有指定字符的行
df2=df[df['商品名称'].str.contains(pat='手机',regex=False)] #regex=True则pat是一个正则表达式,regex=False表示pat是一个字符串
删除pandas dataframe中’商品名称’列包含’手机’字符的所有数据:
#删除含有指定字符的行
df2=df.drop(df[df['商品名称'].str.contains(pat='手机',regex=False)].index,