?? 結果.txt
字號:
>> proto = [
0.6213 0.7373
0.5226 0.8939
0.9797 0.6614
0.9568 0.0118
0.8801 0.1991
0.8757 0.0648
0.1730 0.2987
0.2714 0.2844
0.2523 0.4692
];
protoClass = [
1
1
1
2
2
2
3
3
3
];
data = [
0.9883 0.4329
0.5828 0.2259
0.4235 0.5798
0.5155 0.7604
0.3340 0.5298
];
>>
>> U=~isnan(proto); proto(~U)=0
proto =
0.6213 0.7373
0.5226 0.8939
0.9797 0.6614
0.9568 0.0118
0.8801 0.1991
0.8757 0.0648
0.1730 0.2987
0.2714 0.2844
0.2523 0.4692
>> V=~isnan(data);data(~V)=0
data =
0.9883 0.4329
0.5828 0.2259
0.4235 0.5798
0.5155 0.7604
0.3340 0.5298
>> d=abs(data.^2*U'+V*proto'.^2-2*data*proto')
d =
0.2273 0.4294 0.0523 0.1783 0.0664 0.1482 0.6827 0.5360 0.5430
0.2630 0.4498 0.3472 0.1857 0.0891 0.1117 0.1732 0.1004 0.1684
0.0639 0.1085 0.3160 0.6070 0.3534 0.4697 0.1418 0.1104 0.0415
0.0117 0.0179 0.2253 0.7551 0.4480 0.6136 0.3305 0.2862 0.1541
0.1256 0.1681 0.4342 0.6562 0.4076 0.5097 0.0793 0.0641 0.0103
>> [sorted, proto_index] = sort(d')
sorted =
0.0523 0.0891 0.0415 0.0117 0.0103
0.0664 0.1004 0.0639 0.0179 0.0641
0.1482 0.1117 0.1085 0.1541 0.0793
0.1783 0.1684 0.1104 0.2253 0.1256
0.2273 0.1732 0.1418 0.2862 0.1681
0.4294 0.1857 0.3160 0.3305 0.4076
0.5360 0.2630 0.3534 0.4480 0.4342
0.5430 0.3472 0.4697 0.6136 0.5097
0.6827 0.4498 0.6070 0.7551 0.6562
proto_index =
3 5 9 1 9
5 8 1 2 8
6 6 2 9 7
4 9 8 3 1
1 7 7 8 2
2 4 3 7 5
8 1 5 5 3
9 3 6 6 6
7 2 4 4 4
>> proto_index = proto_index(1:3,:)
proto_index =
3 5 9 1 9
5 8 1 2 8
6 6 2 9 7
>> knn_class = protoClass(proto_index)
knn_class =
1 2 3 1 3
2 3 1 1 3
2 2 1 3 3
>> classLabel = unique(protoClass);
nClass = length(classLabel)
nClass =
3
>> sum(knn_class == classLabel(1))
ans =
1 0 2 2 0
>> classCounter(1, :) = sum(knn_class == classLabel(1))
classCounter =
1 0 2 2 0
>> classCounter(2, :) = sum(knn_class == classLabel(2))
classCounter =
1 0 2 2 0
2 2 0 0 0
>> classCounter(3, :) = sum(knn_class == classLabel(3))
classCounter =
1 0 2 2 0
2 2 0 0 0
0 1 1 1 3
>> [maxi, winner_label_index] =max(classCounter, [], 1)
maxi =
2 2 2 2 3
winner_label_index =
2 2 1 1 3
>> C = classLabel(winner_label_index)
C =
2
2
1
1
3
>> A = data(C == classLabel(1), :)
A =
0.4235 0.5798
0.5155 0.7604
>> A = data(C == classLabel(2), :)
A =
0.9883 0.4329
0.5828 0.2259
>> A = data(C == classLabel(3), :)
A =
0.3340 0.5298
>>
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -