有没有一个函数可以相当于df.isin()
和df[col].str.contains()
的组合?
例如,假设我有系列数据s = pd.Series(['cat','hat','dog','fog','pet'])
,我想找到所有包含['og', 'at']
中的任何一个的地方,我希望得到除'pet'之外的所有内容。
我有一个解决方案,但它相当不简洁:
searchfor = ['og', 'at']
found = [s.str.contains(x) for x in searchfor]
result = pd.DataFrame[found]
result.any()
有没有更好的方法来做这件事?
pd.Series.str.contains
更有效的解决方案。如果性能是一个问题,那么这可能值得探究。 - jpppd.Series.str.endswith
:https://pandas.pydata.org/docs/reference/api/pandas.Series.str.endswith.html - user7868