【发布时间】:2022-11-29 22:39:20
【问题描述】:
pandas 中的 Series.str.find() 函数似乎只需要一个整数作为起始位置。我有一个包含字符串和起始位置数组的系列,我想从每个元素的相应位置开始找到给定子字符串的位置,如下所示:
a = pd.Series(data=['aaba', 'ababc', 'caaauuab'])
a.str.find('b', start=[0, 1, 2]) # returns a series of NaNs
我可以使用列表理解来做到这一点:
[s.find('b', pos) for s, pos in zip(a.values, [0, 1, 2])]
numpy 或 pandas 中是否有函数可以直接更快地执行此操作?另外,有没有一个也可以接受一组子字符串?
【问题讨论】: