-1

我正在使用 sklearn python lib 中的 CountVectorizer从文件中对语料库进行矢量化,并带有input='filename'初始化 CountVectorizer 的选项

from sklearn.feature_extraction.text import CountVectorizer
corpus1=['file_name1','file_name2',...]
count_vectorizer = CountVectorizer(input='filename')
MAT1 = count_vectorizer.fit_transform(corpus1)

然后我需要使用模型来转换一个新的语料库但是在 numpy.array(['str1','str2'])

corpus2 = numpy.array(['str1','str2'])
# ideally
MAT2 = count_vectorizer(input='content').transform(corpus2)

这通常可以在 CountVectorizer 初始化时完成,input='content'但我不知道如何指定一种新的输入类型。

有什么想法或解决方法吗?

谢谢 !

4

2 回答 2

1

一个简单的解决方法可能是将列表中的每个项目写入单独的文件中,然后将文件名列表传递给 CountVectorizer 对象。

于 2018-05-24T11:09:19.683 回答
0

count_vectorizer.input您可以在训练后更改值。

from sklearn.feature_extraction.text import CountVectorizer

corpus1=['file_name1','file_name2',...]
count_vectorizer = CountVectorizer(input='filename')
MAT1 = count_vectorizer.fit_transform(corpus1)

count_vectorizer.input = 'content'
corpus2 = numpy.array(['str1','str2'])
MAT2 = count_vectorizer.transform(corpus2)

我不知道这样做是否有任何影响,但是,由于它是一个公共属性,我认为您可以更改它的值。

于 2018-05-24T11:13:09.627 回答