그래서 저는 Python과 NLTK를 처음 사용합니다. 나는 reviews.csv이라는 파일을 가지고 있는데, 아마존에서 발췌 한 주석으로 구성되어 있습니다. 이 CSV 파일의 내용을 토큰 화하여 csvfile.csv이라는 파일에 기록했습니다. 코드는 다음과 같습니다.WordListCorpusReader가 반복 가능하지 않습니다.
from nltk.tokenize import sent_tokenize, word_tokenize
from nltk.stem import PorterStemmer
import csv #CommaSpaceVariable
from nltk.corpus import stopwords
ps = PorterStemmer()
stop_words = set(stopwords.words("english"))
with open ('reviews.csv') as csvfile:
readCSV = csv.reader(csvfile,delimiter='.')
for lines in readCSV:
word1 = word_tokenize(str(lines))
print(word1)
with open('csvfile.csv','a') as file:
for word in word1:
file.write(word)
file.write('\n')
with open ('csvfile.csv') as csvfile:
readCSV1 = csv.reader(csvfile)
for w in readCSV1:
if w not in stopwords:
print(w)
나는 csvfile.csv에서 형태소 분석을 수행하려고합니다.
Traceback (most recent call last):<br>
File "/home/aarushi/test.py", line 25, in <module> <br>
if w not in stopwords: <br>
TypeError: argument of type 'WordListCorpusReader' is not iterable
오타자 ...'stopwords'가 아닌'stop_words'를 사용하십시오. –
또한 파일을 쓰고 읽을 필요가 있습니다. –
1. 불용어 대신 stop_words를 썼다. 이제 다른 오류가 있습니다. TypeError : unhashable type : 'list' 2. 나는 word_tokenized 파일을 원했습니다. 그래서 내가 그랬다. –