首页 > 解决方案 > 我可以将 re2 库与熊猫一起使用吗?

问题描述

我正在使用 re2 库和 Python 3 使用这个库: https ://github.com/andreasvc/pyre2

在这个例子中,我想在 pandas 中使用这个库:

pandas_series.str.contains(regex, case=False)

在这个例子中可以同时使用 pandas 和 re2 库吗?

标签: pythonregexpandasrere2

解决方案


由于 Pandas 正则表达式方法使用re,您只能使用apply和传递使用 RE2 正则表达式的自定义方法。

您可以使用

import pandas as pd
import re2
df = pd.DataFrame({'test': [ 'abc' , 'def' , '123' ]})
def re2_contains(s, rx):
    return bool(rx.search(s))

rex = re2.compile(r'^[a-z]+$')
>>> df['test'].apply(lambda x: re2_contains(x, rex))
0     True
1     True
2    False
Name: test, dtype: bool

推荐阅读