Python 错误::sklearn.exceptions.NotFittedError:CountVectorizer-词汇表无效';不合适

Python 错误::sklearn.exceptions.NotFittedError:CountVectorizer-词汇表无效';不合适,python,scikit-learn,Python,Scikit Learn,如何解决vectorizor.tranform(fd_norm)中的错误 错误: Traceback (most recent call last): File "the_linking.py", line 162, in predict predV=self._vectorizer.transform(fd_norm) File "C:\ProgramData\Anaconda3\lib\site-packages\sklearn\feature_extraction\text

如何解决
vectorizor.tranform(fd_norm)
中的错误

错误:

Traceback (most recent call last):
  File "the_linking.py", line 162, in predict
    predV=self._vectorizer.transform(fd_norm)
  File "C:\ProgramData\Anaconda3\lib\site-packages\sklearn\feature_extraction\text.py", line 890, in transform
    self._check_vocabulary()
  File "C:\ProgramData\Anaconda3\lib\site-packages\sklearn\feature_extraction\text.py", line 278, in _check_vocabulary
    check_is_fitted(self, 'vocabulary_', msg=msg),
  File "C:\ProgramData\Anaconda3\lib\site-packages\sklearn\utils\validation.py", line 690, in check_is_fitted
    raise _NotFittedError(msg % {'name': type(estimator).__name__})
sklearn.exceptions.NotFittedError: CountVectorizer - Vocabulary wasn't fitted.

在调用
transform()
之前,必须调用
fit()
fit\u transform()
一次,以便模型可以了解数据的频率。 尝试:


这同样适用于编码器。我认为您之前已经转换了数据,然后训练了模型。但是从那里,您只保存了
模型
,而没有保存矢量器。保存模型时,您需要同时保存
矢量器
编码器
,以便能够再次使用它们。加载它们的方式与加载模型的方式相同,并使用它们(在本例中不调用
fit()

在调用
transform()
之前,必须调用
fit()
fit\u transform()
一次,以便模型可以了解数据的频率。 尝试:


这同样适用于编码器。我认为您之前已经转换了数据,然后训练了模型。但是从那里,您只保存了
模型
,而没有保存矢量器。保存模型时,您需要同时保存
矢量器
编码器
,以便能够再次使用它们。以与模型相同的方式加载它们并使用它们(在本例中不调用
fit()

标题只是一条错误消息,问题的内容只是一个代码,不是一个好问题,我建议阅读该问题与PyQt无关,但与sklearn.yaa有关。我正在尝试从textEdit小部件获取文本并将其矢量化,但它显示此错误textEdit是什么?在执行此操作之前,我发现问题是由它引起的。标题只是一条错误消息,问题的内容只是一个代码不是一个好问题,我建议阅读该问题与PyQt无关,但与sklearn.yaa有关。我正在尝试从textEdit小部件获取文本并将其矢量化,但它显示此错误textEdit是什么?,我发现问题是在做之前造成的。我已经安装了模型并将其保存到.sav文件中。然后我加载它以在上面的代码中预测我已经拟合了模型并将其pickle到一个.sav文件中。然后在上面的代码中加载它以进行预测
Traceback (most recent call last):
  File "the_linking.py", line 162, in predict
    predV=self._vectorizer.transform(fd_norm)
  File "C:\ProgramData\Anaconda3\lib\site-packages\sklearn\feature_extraction\text.py", line 890, in transform
    self._check_vocabulary()
  File "C:\ProgramData\Anaconda3\lib\site-packages\sklearn\feature_extraction\text.py", line 278, in _check_vocabulary
    check_is_fitted(self, 'vocabulary_', msg=msg),
  File "C:\ProgramData\Anaconda3\lib\site-packages\sklearn\utils\validation.py", line 690, in check_is_fitted
    raise _NotFittedError(msg % {'name': type(estimator).__name__})
sklearn.exceptions.NotFittedError: CountVectorizer - Vocabulary wasn't fitted.
predV=vectorizer.fit_transform(fd_norm)