-
大小: 2KB文件類型: .m金幣: 1下載: 0 次發(fā)布日期: 2021-01-06
- 語言: Matlab
- 標簽: MATLAB??knn??matlab中knn??knn聚類??
資源簡介
直接使用KNN,將自己的數(shù)據(jù)集直接代入到KNN中,可以分類出自己想要的結果
代碼片段和文件信息
%150?個數(shù)據(jù)集,90個訓練集??60個測試集
%1.計算歐氏距離(計算每一個測試樣本到訓練樣本的距離)%
%2.進行排序,尋找K個
%3.查詢前K個的類型,從而確定它的所屬類數(shù)
%4.判斷是否準確
%5.循環(huán)進行
k=2;
z=allsample;
x=testsample;
y=trainsample;
dis=size(length2length2);
length1=size(allsample1);
length2=size(testsample1);
length3=size(trainsample1);
for(n=1:length2)
????%1.計算歐氏距離
????for(i=1:length2)
????????for(j=1:length3)
????????????dis(ij)=(x(i1)-y(j1))^2+(x(i2)-y(j2))^2+(x(i3)-y(j3))^2+(x(i4)-y(j4))^2;
????????????dis(ij)=sqrt(dis(ij));
????????end
????end
????%?2.依次找出K個數(shù)據(jù)的下標
????t=zeros(nk);
??????for(i=1:k)
????????min=100;??
????????for(j=1:length3)
????????????if(dis(nj) ????????????????min=dis(nj);
????????????end
????????end
?????????for(p=1:length3)
?????????????if(dis(np)==min)
?????????????????d
評論
共有 條評論