(Matlab R 2019b)
我在分类器中使用@dtw
函数作为距离函数。fitcknn
错误消息说两个输入数组的尺寸dtw
不相同。
我更改了函数dtw
以显示数组的尺寸,我发现第一个打印是正确的(x 和 y 都是一个维度)但第二个打印不是。之后出现错误消息。
这是代码:
function [Mdl,Y,pred,gav,gavClass] = test_fitcknn()
%Tests fitcknn
% 2020-05-02
load Y.mat Y;
load pred.mat pred ;
Mdl=fitcknn(pred,Y,'Distance',@dtw);
gav=mean(pred);
gavClass=predict(Mdl,gav);
end
这是错误消息:
Error in test_fitcknn (line 8)
gavClass=predict(Mdl,gav);
Caused by:
Error using dtw (line 91)
The number of rows between X and Y must be equal when X and Y are matrices
pred is the input data 60X156 real
Y is 60X1 cell output character string
我以这种方式保存了数据:
save y.mat y
save pred.mat pred
最好的问候阿拉维