[英]pandas str.contains() gives wrong results?
例如;
pd.Series('ASKING CD.').str.contains('AS')
Out[58]:
0 True
dtype: bool
pd.Series('ASKING CD.').str.contains('ASG')
Out[59]:
0 False
dtype: bool
pd.Series('ASKING CD.').str.contains('SK.')
Out[60]:
0 True
dtype: bool
為什么第三個輸出為True? 沒有“ SK”。 傳遞的字符串中的序列。 點字符不代表什么意思?
正則表達式.
表示匹配任何字符。 解決辦法是逃脫.
或添加參數regex=False
:
print(pd.Series('ASKING CD.').str.contains(r'SK\.'))
0 False
dtype: bool
print(pd.Series('ASKING CD.').str.contains('SK.', regex=False))
0 False
dtype: bool
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.