Прежде всего, я новичок в python / nltk, поэтому приношу свои извинения, если вопрос слишком базовый. У меня есть большой файл, который я пытаюсь токенизировать; Я получаю ошибки памяти.
Одно из решений, о которых я читал, - это чтение файла по одной строке за раз, что имеет смысл, однако при этом я получаю ошибку cannot concatenate 'str' and 'list' objects
. Я не уверен, почему эта ошибка отображается, поскольку (после прочтения файла я проверяю его тип, и это на самом деле строка.
Я попытался разделить файлы размером 7 МБ на 4 меньших, и при запуске я получаю:
error: failed to write data to stream
.
Наконец, при попытке выполнить очень маленький образец файла (100 КБ или менее) и запустить измененный код, я могу токенизировать файл.
Любое понимание того, что происходит? Спасибо.
# tokenizing large file one line at a time
import nltk
filename=open("X:\MyFile.txt","r").read()
type(raw) #str
tokens = ''
for line in filename
tokens+=nltk.word_tokenize(filename)
#cannot concatenate 'str' and 'list' objects
Следующее работает с маленьким файлом:
import nltk
filename=open("X:\MyFile.txt","r").read()
type(raw)
tokens = nltk.word.tokenize(filename)