【问题标题】:Removing Stop Word From a Text in Python Without Using NLTK在不使用 NLTK 的情况下从 Python 中的文本中删除停止词
【发布时间】:2021-04-27 07:54:27
【问题描述】:

我用我的母语用 Python 制作了一个停用词列表。输入文本时如何在不使用 NLTK 的情况下删除它们?

【问题讨论】:

  • 您需要将所有停用词存储在一个文本文件中。从文本文件中查找每个单词。如果找到,请将其从您的文本中删除。
  • 方法会因语言的拼写而异。您能否将语言添加到问题本身?
  • 语言是土耳其语。

标签: python list stop-words


【解决方案1】:

检查一下(这仅在所讨论的语言可以在空格上被破坏时才有效,但这尚未得到澄清——感谢 Oso):

import numpy as np
your_stop_words = ['something','sth_else','and ...']
new_string = input()
words = np.array(new_string.split())
is_stop_word = np.isin(words,your_stop_words)
filtered_words = words[~is_stop_word]
clean_text = ' '.join(filtered_words)

如果有问题的语言不能分成空格,你可以使用这个解决方案:

your_stop_words = ['something','sth_else','and ...']
new_string = input()
clean_text = new_string
for stop_word in your_stop_words :
    clean_text = clean_text.replace(stop_word,"")

在这种情况下,您需要确保停用词不能成为另一个词的一部分。你可以根据你的语言来做。例如,您可以在停用词周围使用空格。

【讨论】:

  • 这仅在相关语言可以在空格上被破坏时才有效,但尚未澄清
  • 谢谢。你能解释一下什么是“numpy”吗?我是 Python 新手。
  • @Oso ,是的,你是对的。我根据您的评论编辑了我的答案。谢谢。
  • @FranklinHudson,检查一下link
  • 我以退出代码 0 结束的进程失败并出现此代码。
猜你喜欢
  • 1970-01-01
  • 2016-11-11
  • 2013-05-12
  • 1970-01-01
  • 2023-01-26
  • 2015-01-20
  • 2021-09-16
  • 2019-01-21
  • 2021-02-02
相关资源
最近更新 更多