1

numpy 配列の特定の部分に到達するまで、正常に機能する混同行列を使用しています。

グラウンド トゥルースの結果は という配列に格納されy_test、分類子の結果は に格納されrます。

結果セット全体に混同行列を使用すると、問題はありません。

しかし、実験の結果を分割したいと思います。cと呼ばれる配列に格納されている 3 つの特定の分類子の結果がありbますt

ここで、これら 3 つの特定の分類器の結果を、全体的な結果のいくつかの特定のインデックスと比較したいと思います。たとえばC、全体的な結果のインデックス 91 から 180 までの分類子の結果の混同行列を強調したいと思います。

分類子Bについては、インデックス 1 から 90 までの結果の混同行列を確認したいと考えています。

これは私のコードです。最初の 2 つの混同行列については、問題はありません。彼らはうまく現れます。

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()

しかし、上記の結果の最後のセット ( classifier からの結果配列を使用T) については、次のエラーが発生します。

cm_t = confusion_matrix(y_test[228:317], t[228:317])
IndexError: invalid index to scalar variable

何が悪いのかわからない。

4

1 に答える 1