Plot data according th k_dist chart using KNNN
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
I have used KNN to detect the kth items near a specific point according to the code bellow, But iam not sure how can i use KNN to produce k-dist chart for my dataset , it help to detect epsilon :
clc;
clear all;
%%%%%%%%%%%%%%%%%%
load fisheriris
x=meas(:,3:4);
k=5;
newpoint=[ 5 1.45]
%%%%%%%%%%%%%%%%%%
function [neighborIds neighborDistances,x_closest]= kNearestNeighbors(dataMatrix, queryMatrix, k)
neighborIds = zeros(size(queryMatrix,1),k);
neighborDistances = neighborIds;
numDataVectors = size(dataMatrix,1);
numQueryVectors = size(queryMatrix,1);
for i=1:numQueryVectors,
dist = sum((repmat(queryMatrix(i,:),numDataVectors,1)-dataMatrix).^2,2);
[sortval sortpos] = sort(dist,'ascend');
neighborIds(i,:) = sortpos(1:k);
x_closest=dataMatrix(neighborIds,:);
neighborDistances(i,:) = sqrt(sortval(1:k));
end
0 Kommentare
Antworten (0)
Siehe auch
Kategorien
Mehr zu Statistics and Machine Learning Toolbox finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!