Expression or statement is incorrect--possibly unbalanced (, {, or [.

hello every body i have an error ??? Error: File: test.m Line: 31 Column: 3 exactely in [~,scores] = predict(cl,xGrid); i have Matlab 7.8.0 (R2009a)
  1. rand(1); % For reproducibility
  2. r = sqrt(rand(100,1)); % Radius
  3. t = 2*pi*rand(100,1); % Angle
  4. data1 = [r.*cos(t), r.*sin(t)]; % Points
  5. r2 = sqrt(3*rand(100,1)+1); % Radius
  6. t2 = 2*pi*rand(100,1); % Angle
  7. data2 = [r2.*cos(t2), r2.*sin(t2)]; % points
  8. figure;
  9. plot(data1(:,1),data1(:,2),'r.','MarkerSize',15)
  10. hold on
  11. plot(data2(:,1),data2(:,2),'b.','MarkerSize',15)
  12. ezpolar(@(x)1);ezpolar(@(x)2);
  13. axis equal
  14. hold off
  15. data3 = [data1;data2];
  16. theclass = ones(200,1);
  17. theclass(1:100) = -1;
  18. %Train the SVM Classifier
  19. cl = fitcsvm(data3,theclass,'KernelFunction','rbf',...
  20. 'BoxConstraint',Inf,'ClassNames',[-1,1]);
  21. % Predict scores over the grid
  22. d = 0.02;
  23. [x1Grid,x2Grid] = meshgrid(min(data3(:,1)):d:max(data3(:,1)),...
  24. min(data3(:,2)):d:max(data3(:,2)));
  25. xGrid = [x1Grid(:),x2Grid(:)];
  26. [~,scores] = predict(cl,xGrid);
  27. % Plot the data and the decision boundary
  28. figure;
  29. h(1:2) = gscatter(data3(:,1),data3(:,2),theclass,'rb','.');
  30. hold on
  31. ezpolar(@(x)1);
  32. h(3) = plot(data3(cl.IsSupportVector,1),data3(cl.IsSupportVector,2),'ko');
  33. contour(x1Grid,x2Grid,reshape(scores(:,2),size(x1Grid)),[0 0],'k');
  34. legend(h,{'-1','+1','Support Vectors'});
  35. axis equal
  36. hold off

답변 (1개)

Steven Lord
Steven Lord 2017년 11월 10일

1 개 추천

The ability to ignore specific input or output arguments in function calls using the tilde operator was introduced in release R2009b. Replace ~ with a dummy variable name, like dummy, for older releases.

댓글 수: 3

i'll to thank you for quick response
i have an other problem
??? Undefined function or method 'fitcsvm' for input arguments of type 'double'.
Error in ==> test at 23
cl = fitcsvm(data3,theclass,'KernelFunction','rbf',...
fitcsvm - Train binary support vector machine classifier
fitcsvm trains or cross-validates a support vector machine (SVM)
model for two-class (binary) classification on a low- through
moderate-dimensional predictor data set. fitcsvm supports...
Documentation > Statistics and Machine Learning Toolbox > Classification > Support Vector Machine Classification
That routine was introduced in R2014a.
In your software release there was no built-in SVM in any toolbox, so people would compile and link the third party libsvm

댓글을 달려면 로그인하십시오.

카테고리

도움말 센터File Exchange에서 Statistics and Machine Learning Toolbox에 대해 자세히 알아보기

제품

태그

질문:

2017년 11월 10일

댓글:

2017년 11월 11일

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by