scikit混淆矩阵中标量变量的索引无效

时间:2015-01-14 14:02:24

标签: python numpy machine-learning scikit-learn confusion-matrix

我使用的混淆矩阵工作正常,直到我到达numpy数组的特定部分。

地面实况结果存储在一个名为y_test的数组中,而类别传真结果则存储在r中。结果存储在c

当我对整组结果使用混淆矩阵时,没有问题。

但我想将结果与我的实验分开。 我有3个特定的分类器'结果存储在名为btC的数组中。

现在我想将这3个特定分类器的结果与整体结果的某些特定指数进行比较。例如,我想强调分类器B的结果的混淆矩阵,特别是从整体结果的索引91到180。

对于分类器cm_c = confusion_matrix(y_test[91:80],c[91:80]) plt.matshow(cm_c) plt.title('Confusion matrix') plt.colorbar() plt.ylabel('True label') plt.xlabel('Predicted label') plt.show() cm_b = confusion_matrix(y_test[1:90],b[1:90]) plt.matshow(cm_b) plt.title('Confusion matrix') plt.colorbar() plt.ylabel('True label') plt.xlabel('Predicted label') plt.show() cm_t = confusion_matrix(y_test[228:317,t[228:317]) plt.matshow(cm_t) plt.title('Confusion matrix') plt.colorbar() plt.ylabel('True label') plt.xlabel('Predicted label') plt.show() 我想看到索引1到90的结果的混淆矩阵。 等等。

这是我的代码,如下。对于前两个混淆矩阵,没有问题。他们表现得很好。

T

但对于上面的最后一组结果(使用分类器cm_t = confusion_matrix(y_test[228:317], t[228:317]) IndexError: invalid index to scalar variable 中的结果数组),我收到以下错误:

{{1}}

我不知道出了什么问题。

1 个答案:

答案 0 :(得分:1)

在你的行中:

cm_t = confusion_matrix(y_test[228:317,t[228:317])
你错过了一个括号。它应该是:

cm_t = confusion_matrix(y_test[228:317],t[228:317])