Can anyone tell me how to solve this error?
Show older comments
clc;
clear ;
close all;
%%
load FA
F1 = Feature;
load NF
F2 = Feature;
xdata = [F1;F2];
group = cell(1,1);
for ii = 1:size(F1,1)
group{ii,1} = 'Fatigue';
end
for ii = 1:size(F2,1)
group{ii+size(F1,1),1} = 'Non-Fatigue';
end
svmStruct = fitcsvm(xdata,group,'OptimizeHyperparameters','auto','HyperparameterOptimizationOptions',struct('showplot',true));
% Testing
save svm svmStruct
load svm
for ii = 1:size(F1,1)
species = ClassificationSVM(svmStruct,F1(ii,:));
disp([ group{ii,1} ' = ' species]);
end
for ii = 1:size(F2,1)
species = ClassificationSVM(svmStruct,F2(ii,:));
disp([ group{ii+size(F1,1),1} ' = ' species]);
end
%%%%%%%%%%%%%%%
It runs for some time and gives error on classificationSVM.
Here Xdata is a 8x4 double. error says X should be a double or a single matrix. How to solve it and the other errors?

5 Comments
Walter Roberson
on 24 Jul 2020
You do not show the code near line 200 where you are calling ClassificationSVM.fit() passing in Feature. We need to more about the datatype of Feature at that line.
anand rathod
on 24 Jul 2020
Walter Roberson
on 24 Jul 2020
Why are you directly invoking the private ClassificationSVM.fit() instead of calling fitcsvm()? And you appear to be expecting the results to be species indicators but that is not what fit is for, and you would use predict() to use a trained classifier plus input data to estimate species.
Image Analyst
on 25 Jul 2020
If you need more help, attach FA.mat and NF.mat.
anand rathod
on 25 Jul 2020
Answers (1)
Jingwei Too
on 24 Jul 2020
0 votes
Why don't you try on this toolbox https://www.mathworks.com/matlabcentral/fileexchange/71461-simple-machine-learning-algorithms-for-classification?s_tid=prof_contriblnk
Categories
Find more on Text Analytics Toolbox in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
