gpt4 book ai didi

nltk - nltk 是否包含阿拉伯语停用词,如果没有,我该如何添加?

转载 作者:行者123 更新时间:2023-12-01 08:50:57 27 4
gpt4 key购买 nike

我试过这个,但它不起作用

from nltk.corpus import stopwords
stopwords_list = stopwords.words('arabic')
print(stopwords_list)

更新 [2018 年 1 月]: 自 2017 年 10 月以来,nltk 数据存储库已包含阿拉伯语停用词,因此不再出现此问题。上面的代码将按预期工作。

最佳答案

截至 2017 年 10 月,nltk 包含一组阿拉伯语停用词。如果您在该日期之后运行 nltk.download(),则不会出现此问题。如果您使用 nltk 已有一段时间,但现在缺少阿拉伯语停用词,请使用 nltk.download() 更新停用词语料库。

  • 如果不带参数调用 nltk.download(),您会发现 stopwords 语料库显示为“过时”(红色)。下载包含阿拉伯语的当前版本。
  • 或者,您可以通过在交互式提示中运行以下代码 一次, 来简单地更新停用词语料库:
    >>> import nltk
    >>> nltk.download("stopwords")

  • 注意:

    在列表中查找单词真的很慢。使用集合,而不是列表。例如。,
    arb_stopwords = set(nltk.corpus.stopwords.words("arabic"))

    原始答案(仍然适用于未包含的语言)

    为什么不检查 stopwords 集合包含的内容:
    >>> from nltk.corpus import stopwords
    >>> stopwords.fileids()
    ['danish', 'dutch', 'english', 'finnish', 'french', 'german', 'hungarian',
    'italian', 'norwegian', 'portuguese', 'russian', 'spanish', 'swedish',
    'turkish']

    所以不,没有阿拉伯语列表。我不确定“添加”是什么意思,但停用词列表只是单词列表。他们甚至不做形态分析,或其他你可能想要的屈折语言的东西。因此,如果您有(或可以组合)一个阿拉伯语停用词列表,只需将它们放入 set() ¹ 中,如果您的代码有效,您就会领先一步。

    关于nltk - nltk 是否包含阿拉伯语停用词,如果没有,我该如何添加?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42625084/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com