k-NN search. What is the difference between these 2-codes ?
    3 views (last 30 days)
  
       Show older comments
    
    {
The program for k-NN search in MATLAB. 
load fisheriris %inbuilt data set provided in MATLAB. 
x = meas(:,3:4);
gscatter(x(:,1),x(:,2),species)
set(legend,'location','best')
newpoint = [5 1.45];
line(newpoint(1),newpoint(2),'marker','x','color','k',...
   'markersize',10,'linewidth',2)
[n,d] = knnsearch(x,newpoint,'k',10)  %my doubt is here. 
line(x(n,1),x(n,2),'color',[.5 .5 .5],'marker','o',...
    'linestyle','none','markersize',10)
%modified program for my requirement with different data set. x and z are the two variables with 24 elements in each. 
load stroke
gscatter(x,z,species);
set(legend,'location','best')
 newpoint=[115,150];
line(newpoint(1),newpoint(2),'marker','x','co  lor','k',...
   'markersize',10,'linewidth',2);
 [n,d] = knnsearch(x,newpoint,'k',10) % when i run , it gives error here. what is the difference between the original code and modified code ? infact 'newpoint' in the original program is a vector.  
line(x(n,1),x(n,2),'color',[.5 .5 .5],'marker','o',...
    'linestyle','none','markersize',10)
0 Comments
Accepted Answer
  Tom Lane
    
 on 15 Feb 2012
        You have supplied only x, not [x z], as the first argument to knnsearch. Your newpoint vector, on the other hand, has two columns.
2 Comments
  Shaik Ghouse Basha
 on 8 Sep 2013
				How to predict data using KNN ?
I have a vector of 80 years of data. I want to predict for 30 years. Please let me know how it is possible to using KNN?
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!