我正在尝试对新闻文章的数据集运行LDA算法。我明白在预处理步骤中必须删除数字,并且我编写了一个简单的regex代码来用空格替换数字。
df['number_removed'] = df['text'].str.replace('d+', '',regex=True)
然而,我想保留一些数字,因为删除它们可能会改变上下文/主题。例如,
[Desired]"第四次工业革命,也被称为工业40,正开始改变商品的生产方式">
[错误]"第四次工业革命也被称为工业,正开始改变商品的生产方式">
注意:作为预处理的一部分,标点符号在示例中已被删除所以,我在想:
- 运行LDA前是否可以保留必要的号码?
- 如何有选择地删除号码或处理上述情况?
在类似的情况下,有时会使用假标记(如<NUMBER>
)替换数字,以便保留原始文本中存在数字的事实,但不会干扰语法上下文。重要的实际价值通常不是一概而论。
如果你想保留具体的数字(比如"industry 40")那么我想你需要调整你的正则表达式来保持这些模式。