Python 我可以多次调用vectorizer.fit\u transform来更新矢量器吗

Python 我可以多次调用vectorizer.fit\u transform来更新矢量器吗,python,scikit-learn,Python,Scikit Learn,我正在一个大数据集上训练一个分类器,这个数据集由多个文件分开。我想用我所有的数据更新CountVectorizer,但同时只将一个文件读入内存 我当前的代码: raw_documents = [] for f in files: text = np.loadtxt(open("csv/{f}".format(f=f), "r", delimiter="\t", dtype="str", comments=None) raw_documents.extend(list(text[

我正在一个大数据集上训练一个分类器,这个数据集由多个文件分开。我想用我所有的数据更新
CountVectorizer
,但同时只将一个文件读入内存

我当前的代码:

raw_documents = []

for f in files:
    text = np.loadtxt(open("csv/{f}".format(f=f), "r", delimiter="\t", dtype="str", comments=None)
    raw_documents.extend(list(text[:,1]))

vectorizer = CountVectorizer(stop_words=None)
train_features = vectorizer.fit_transform(raw_documents)
是否可以部分调用
fit\u transform
,这样我就可以

vectorizer = CountVectorizer(stop_words=None)

for f in files:
    text = np.loadtxt(open("csv/{f}".format(f=f), "r", delimiter="\t", dtype="str", comments=None)
    train_features = vectorizer.fit_transform(text[:,1])
可以找到相关文档,但我无法完全理解


提前谢谢

问题在于,
CountVecorizer
需要事先知道courpus中的所有单词,以便它能够将单词映射到整数。(如果你能做一个“部分匹配”就好了,如果遇到生词,它会将它们添加到末尾,但据我所知,这目前不受支持)

另一种选择是使用HashingVectorizer;这不需要合适,因为它只是通过一个固定的散列函数来运行每个单词,以获得其整数编码