(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
С уважением, Алави