我有一个数据框:
df = pd.DataFrame({'Sequence': ['ABCDEFG', 'AWODIH', 'AWODIHAWD], 'Length': [7, 6, 9]})
我希望能够检查“序列”列的任何条目中是否存在特定序列,例如“ WOD”。它不必位于条目的中间或结尾,但是只要该序列以该顺序存在于该列的任何条目中,就返回true。
我该怎么做?
我调查了.isin和.contains,这两个字段仅在列中有确切的序列和整个序列时才返回:
df.isin('ABCDEFG') //returns true
df.isin('ABC') //returns false
我想要一种Cltr + F函数,可以按该顺序搜索任何序列,而不管它在哪里或多长时间。
可以简单地使用str.contains
:
In [657]: df['Sequence'].str.contains('WOD')
Out[657]:
0 False
1 True
2 True
Name: Sequence, dtype: bool
或者,您可以使用str.find
:
In [658]: df['Sequence'].str.find('WOD')
Out[658]:
0 -1
1 1
2 1
Name: Sequence, dtype: int64
-1
失败时返回。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句