Scikit-Learn:如何从错误分类的记录数组中打印出详细信息?

问题描述

在训练/测试数据集上运行 scikit-learn 分类器并获得混淆矩阵后,我试图打印出 28 个错误分类记录的数组。 “for”循环似乎不起作用!这是我正在做的:

y_test = np.asarray(y_test)
misclassified = np.where(y_test != my_email_classifier.predict(X_test))

misclassified    

产生这个输出

(array([  17,232,278,362,366,395,538,576,674,699,716,749,787,929,983,1015,1020,1077,1154,1157,1201,1301,1338,1399,1444,1451,1612,1666],dtype=int64),)

哪些是正确的行索引。

这一行:

print(misclassified[0][0],y[misclassified[0][0]],n[misclassified[0][0]])

产生输出

17 phish 113.txt

这与正确的数据帧消息有关。 但是,当我尝试将此打印语句放入“for”循环中以打印出错误分类数组的完整列表时:

i=0
for x in misclassified:
    print(x[0][i],y[x[0][i]],n[x[0][i]])
    i+=1

我收到此错误

---------------------------------------------------------------------------
IndexError                                Traceback (most recent call last)
<ipython-input-34-9a038043ab65> in <module>
      1 i=0
      2 for x in misclassified:
----> 3     print(x[0][i],n[x[0][i]])
      4     i+=1

IndexError: invalid index to scalar variable.

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)