我有一个数据帧:
df = pd.DataFrame({'Sequence': ['ABCDEFG', 'AWODIH', 'AWODIHAWD], 'Length': [7, 6, 9]})
我希望能够检查“sequence”列的任何条目中是否存在特定的序列,比如“WOD”。它不必位于中间或结尾,但如果该顺序在该列的任何条目中都存在,则返回true。p>
我该怎么做
我查看了.isin和.contains,这两个函数仅在列中包含精确且完整的序列时才返回:
df.isin('ABCDEFG') //returns true
df.isin('ABC') //returns false
我想要一种Cltr+F函数,它可以按照这个顺序搜索任何序列,不管它在哪里,也不管它有多长
我们需要在
contains
之前使用str.findall
只需使用^{} 即可:
或者,您可以使用^{} :
失败时返回
-1
如果要使用in语法,可以执行以下操作:
如果考虑性能,则以下解决方案的速度比其他解决方案快很多倍:
基准
相关问题 更多 >
编程相关推荐