初学者在这里。
我有大量的.txt文件,我想在上面训练Doc2Vec模型。但是,我无法以可用的方式将数据导入python。
要导入数据,我使用了:
docLabels = []
docLabels = [f for f in listdir(“PATH TO YOU DOCUMENT FOLDER”) if
f.endswith(‘.txt’)]
data = []
for doc in docLabels:
data.append(open(‘PATH TO YOU DOCUMENT FOLDER’ + doc).read()) `
但是,有了这个,我会得到一个“列表”,无法进行进一步的处理。我似乎找不到如何导入文本文件的方式,使其可以在SO上或教程中的任何地方与NLTK / doc2vec一起使用。
我们将不胜感激。谢谢!
答案 0 :(得分:0)
我只解决标题所指示的部分问题,即Doc2Vec
和TaggedDocument
。 (NLTK是另一回事。)
TaggedDocument
类要求您为创建的每个对象指定words
和tags
。
因此,当您当前仅向data
附加文件的大量完整内容时,您将需要:
.split()
留在空白处,尽管大多数项目都做得更多TaggedDocument
,并将其附加到data
因此,您可以将现有循环替换为:
for doc in docLabels:
words = open(open(‘PATH TO YOU DOCUMENT FOLDER’ + doc).read()).split()
tags = [doc]
data.append(TaggedDocument(words=words, tags=tags)