''GaussianNB' object has no attribute 'var_' when I'm using pickle
I've been working on a project for school, and I've run into this problem.
Here is the error
File "/Users/dshi/Desktop/Coding/LANGS/Python/Project/questiongen.py", line 268, in generateQuestions
labeledAnswers = predictWords(wordsDf, df)
File "/Users/dshi/Desktop/Coding/LANGS/Python/Project/questiongen.py", line 178, in predictWords
y_pred = predictor.predict_proba(wordsDf)
File "/Users/dshi/opt/anaconda3/envs/pythonProject/lib/python3.10/site-packages/sklearn/naive_bayes.py", line 125, in predict_proba
return np.exp(self.predict_log_proba(X))
File "/Users/dshi/opt/anaconda3/envs/pythonProject/lib/python3.10/site-packages/sklearn/naive_bayes.py", line 104, in predict_log_proba
jll = self._joint_log_likelihood(X)
File "/Users/dshi/opt/anaconda3/envs/pythonProject/lib/python3.10/site-packages/sklearn/naive_bayes.py", line 489, in _joint_log_likelihood
n_ij = -0.5 * np.sum(np.log(2.0 * np.pi * self.var_[i, :]))
AttributeError: 'GaussianNB' object has no attribute 'var_'
Line 268 is as follows: labeledAnswers = predictWords(wordsDf, df)
the predictWords function is written like this
def predictWords(wordsDf, df):
predictorPickleName = 'data/pickles/nb-predictor.pkl'
predictor = loadPickle(predictorPickleName)
y_pred = predictor.predict_proba(wordsDf)
labeledAnswers = []
for i in range(len(y_pred)):
labeledAnswers.append({'word': df.iloc[i]['text'], 'prob': y_pred[i][0]})
and the loadpickle function is like this
def loadPickle(fileName):
file = open(fileName, 'rb')
content = cPickle.load(file)
file.close()
return content
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|
