我有以下代码来检查某列的值是否包含给定的字符串:
my_df[my_df.name.str.contains('Mike')]
然而,当我试图让它适用于所有字母案例时:
my_df[my_df.name.str.lower.contains('mike')]
我收到以下错误:
AttributeError: 'function' object has no attribute 'contains'
调用lower()函数的正确方法是什么,所以我可以确保匹配不区分大小写?谢谢!
答案 0 :(得分:4)
您可以使用布尔参数case
。默认设置为True
,区分大小写。因此,您应将其设置为False
。 Pandas Documentation
my_df[my_df.name.str.contains('Mike', case=False)]
答案 1 :(得分:1)
使用此:
my_df[my_df.name.str.contains('Mike', flags=re.IGNORECASE)]
来源:http://pandas.pydata.org/pandas-docs/stable/generated/pandas.Series.str.contains.html