使用相同categorical数组绘制混淆矩阵,由于要将其中的数字标签替换成字符标签{'直流电压偏差','直流电压波动','直流电压纹波','动态电压暂降','线路故障暂降','正常'},开始使用find寻找index替换的方式,具体代码如下:
- YTest(find(YTest == categorical(1))) = categorical({'直流电压偏差'});
- YTest(find(YTest == categorical(2))) = categorical({'直流电压波动'});
- YTest(find(YTest == categorical(3))) = categorical({'直流电压纹波'});
- YTest(find(YTest == categorical(4))) = categorical({'动态电压暂降'});
- YTest(find(YTest == categorical(5))) = categorical({'线路故障暂降'});
- YTest(find(YTest == categorical(6))) = categorical({'正常'});
- YPred(find(YPred == categorical(1))) = categorical({'直流电压偏差'});
- YPred(find(YPred == categorical(2))) = categorical({'直流电压波动'});
- YPred(find(YPred == categorical(3))) = categorical({'直流电压纹波'});
- YPred(find(YPred == categorical(4))) = categorical({'动态电压暂降'});
- YPred(find(YPred == categorical(5))) = categorical({'线路故障暂降'});
- YPred(find(YPred == categorical(6))) = categorical({'正常'});
复制代码 结果使用绘制的混淆矩阵如下图所示:
结果显示的混淆矩阵除了修改后的标签,还包含原来的数字标签,但是看标签的数据类型还是categorical数组,如下图示:
查看数据类型,完全一致,无法解决问题。后来使用categorical自带的替换功能,代码如下:
- YTest = categorical(double(YTest),[1,2,3,4,5,6],{'直流电压偏差','直流电压波动','直流电压纹波','动态电压暂降','线路故障暂降','正常'})
复制代码解决。绘制的混淆矩阵中字符标签完美取代数字标签,如下图示:
|