我正在使用sklearn python lib中的CountVectorizer将带有input='filename'
选项的语料库矢量化为init 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)
当使用input='content'
初始化CountVectorizer时,这可以通常完成,但我不知道如何指定新类型的输入。
有任何想法可以做到这一点或解决方案吗?
谢谢!
答案 0 :(得分:1)
一个简单的解决方法可能是将列表中的每个项目写入单独的文件中,然后将文件名称列表传递给CountVectorizer对象。
答案 1 :(得分: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)
我不知道这样做是否有任何影响,但是,由于它是一个公共属性,我认为你可以改变它的价值。