我建立了朴素的贝叶斯分类器,我想通过使用此代码对存储在数据框中的测试数据进行预测,但是在计算准确性时出现以下错误。
预测代码:
example_counts=vectorizer.transform(new_data['testQuestions'].values)
prediction=classifier.predict(example_counts)
predictions
然后通过比较预期类别(测试类别)和从先前代码获得的预测来计算准确性。
import random
import math
from sklearn.metrics import accuracy_score
testcategory=new_data['testCategory']
def getAccuracy(testSet, prediction):
correct = 0
for x in range(len(testSet)):
if testSet[x][-1] == prediction[x]:
correct += 1
return (correct/float(len(testSet))) * 100.0
accuracy = getAccuracy(testcategory, predictions)
print('Accuracy: {0}%'.format(accuracy))
我遇到以下错误:
IndexError:索引1098超出了轴10的大小1098的范围