gpt4 book ai didi

python - 从 NLTK 中删除停用词

转载 作者:太空宇宙 更新时间:2023-11-04 01:27:45 24 4
gpt4 key购买 nike

我正在尝试读取一个文本文件 (foo1.txt),删除所有 nltk 定义的停用词并写入另一个文件 (foo2.txt)。代码如下:需要导入:from nltk.corpus import stopwords

def stop_words_removal(): 
with open("foo1.txt") as f:
reading_file_line = f.readlines() #entire content, return list
#print reading_file_line #list
reading_file_info = [item.rstrip('\n') for item in reading_file_line]
#print reading_file_info #List and strip \n
#print ' '.join(reading_file_info)
'''-----------------------------------------'''
#Filtering & converting to lower letter
for i in reading_file_info:
words_filtered = [e.lower() for e in i.split() if len(e) >= 4]
print words_filtered

'''-----------------------------------------'''
'''removing the strop words from the file'''
word_list = words_filtered[:]
#print word_list
for word in words_filtered:
if word in nltk.corpus.stopwords.words('english'):
print word
print word_list.remove(word)

'''-----------------------------------------'''
'''write the output in a file'''
z = ' '.join(words_filtered)
out_file = open("foo2.txt", "w")
out_file.write(z)
out_file.close()

问题是代码的第二部分“从文件中删除单选词”不起作用。任何建议将不胜感激。谢谢。

Example Input File: 
'I a Love this car there', 'positive',
'This a view is amazing there', 'positive',
'He is my best friend there', 'negative'

Example Output:
['love', "car',", "'positive',"]
['view', "amazing',", "'positive',"]
['best', "friend',", "'negative'"]

我按照 link 中的建议进行了尝试, 但它们都不起作用

最佳答案

这就是我会在你的函数中做的:

with open('input.txt','r') as inFile, open('output.txt','w') as outFile:
for line in inFile:
print(''.join([word for word in line.lower().translate(None, string.punctuation).split()
if len(word) >=4 and word not in stopwords.words('english')]), file=outFile)

不要忘记添加:

from __future__ import print_function                   

如果您使用的是 Python 2.x。

关于python - 从 NLTK 中删除停用词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16613751/

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