我正在尝试删除包含某些子字符串的行。我想删除所有包含子字符串“ Year”,“ Monday”,“ /”
的值我的dataframe
如下:
col1
24/05/2020
May Year 2020
Monday
May 2020
我尝试的代码:
drop_values = ['Monday','Year', '/']
df = df[~df['Col1'].str.contains(drop_values)]
但是我遇到以下错误:
TypeError: unhashable type: 'list'
答案 0 :(得分:1)
Series.str.contains
方法接受正则表达式。
>>> df
col1
0 24/05/2020
1 May Year 2020
2 Monday
3 May 2020
>>> drop_values = ['Monday','Year', '/']
>>> df[~df['col1'].str.contains('|'.join(drop_values))]
col1
3 May 2020
答案 1 :(得分:0)
您可以这样做:
df = df[~df['col1'].str.contains('Monday|Year|/')]
print(df)
输出:
col1
3 May 2020