gpt4 book ai didi

python - 使用NLTK摆脱停用词和文档标记化

转载 作者:行者123 更新时间:2023-12-04 13:11:35 27 4
gpt4 key购买 nike

我在使用nltk删除.token文件并将其标记化时遇到困难。我不断得到以下AttributeError: 'list' object has no attribute 'lower'

尽管这是我第一次做这样的事情,但我只是无法弄清楚自己在做什么错。以下是我的代码行。如果有任何建议,我将不胜感激,谢谢

    import nltk
from nltk.corpus import stopwords
s = open("C:\zircon\sinbo1.txt").read()
tokens = nltk.word_tokenize(s)
def cleanupDoc(s):
stopset = set(stopwords.words('english'))
tokens = nltk.word_tokenize(s)
cleanup = [token.lower()for token in tokens.lower() not in stopset and len(token)>2]
return cleanup
cleanupDoc(s)

最佳答案

您可以使用NLTK中的stopwords列表,请参阅How to remove stop words using nltk or python
最有可能您还希望删除标点符号,可以使用string.punctuation,请参见http://docs.python.org/2/library/string.html:

>>> from nltk import word_tokenize
>>> from nltk.corpus import stopwords
>>> import string
>>> sent = "this is a foo bar, bar black sheep."
>>> stop = set(stopwords.words('english') + list(string.punctuation))
>>> [i for i in word_tokenize(sent.lower()) if i not in stop]
['foo', 'bar', 'bar', 'black', 'sheep']

关于python - 使用NLTK摆脱停用词和文档标记化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17390326/

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