ValueError:无法使用已编译的正则表达式作为 regex=False 的替换模式

问题描述 投票:0回答:1

我正在 Google Colab 上做一个项目,我使用以下版本:

!pip install "gensim==4.2.0" !pip install "texthero==1.0.5"

直到最近,我收到以下警告: FutureWarning:在未来的版本中,regex 的默认值将从 True 更改为 False。 return input.str.replace(r"^\d+\s|\s\d+\s|\s\d+$", " ")

但执行正常。现在,我收到以下错误: image

我该如何进行?

我尝试了不同的版本,但问题仍然存在。

python text nlp
1个回答
0
投票

这是触发 pandas 错误的 texthero 错误。

Pandas

str.replace
现在默认使用
regex=False

Texthero的

replace_digits
功能已经两年没有更新了,没有明确通过
regex=True

    if only_blocks:
        pattern = r"\b\d+\b"
        return s.str.replace(pattern, symbols)
    else:
        return s.str.replace(r"\d+", symbols)

您应该向 texthero 填写错误报告,可能还有其他几个出现的

str.replace
需要修复。

在此期间,您可以通过将代码更改为来修补库:

    if only_blocks:
        pattern = r"\b\d+\b"
        return s.str.replace(pattern, symbols, regex=True)
    else:
        return s.str.replace(r"\d+", symbols, regex=True)

或者使用

1.2
之前的 pandas 版本。

© www.soinside.com 2019 - 2024. All rights reserved.