对于入侵攻击类别中的四个标签(分别由1、2、3和4表示的DoS,Probe,R2L和U2R),我有四个不同的混淆矩阵,每种形式的计算矩阵为2X2每个类别标签的正常攻击(以0表示)或攻击之一(1或2或3或4)。每个单独的矩阵都是使用类似
的代码用大熊猫创建的Y_pred1 = clf.predict(X_test1)
pandas.crosstab(Y_test1, Y_pred1, rownames=['Actual'], colnames =['Predicted'])
Y_pred2 = clf.predict(X_test2)
pandas.crosstab(Y_test2, Y_pred2, rownames=['Actual'], colnames=['Predicted'])
Y_pred3 = clf.predict(X_test3)
pandas.crosstab(Y_test3, Y_pred3, rownames=['Actual'], colnames=['Predicted'])
Y_pred4 = clf.predict(X_test4)
pandas.crosstab(Y_test4, Y_pred4, rownames=['Actual'], colnames=['Predicted'])
在这里,clf是分类器,X_test1是第一个标签'1'的测试集。每个矩阵的列和行标签将采用以下形式 DoS标签为[[0,1],[0,1]],探针标签为[[0,2],[0,2]],依此类推。同样,我预测了其中四个,并将其存储在这四个数据帧中(Y_pred1,Y_pred2,Y_pred3和Y_pred4)。 如何将所有2X2的所有这些预测矩阵绘制成具有[[0,1,2,3,4],[0,1,2,3,4]]形式的5X5的单个矩阵?
P.S。此处,0、1、2、3和4是矩阵的标签,而不是用于绘制混淆矩阵的实际数据。矩阵在问题中以[列] [行]格式表示。每个2X2矩阵的第一行和第一列将具有相同的标签(即0)。