在数据分析之前,我们通常需要先将数据标准化,利用标准化后的数据进行数据分析;
```matlab
A = [1,2,3; 4,5,6;7,8,9];
tA = zscore(A)
```
```matlab
tA =
-1 -1 -1
0 0 0
1 1 1
```
```
PS:个人感觉相差不是很大,有时候准确率可能会降低,也可能会好一些
```
matlab k近邻
[neighbor,distence] = knnsearch(kdtree,train_data,'k',k+1); neighbor = neighbor(:,2:k+1); distence = distence(:,2:k+1);
均值
mean(distence(:, k));
利用 k近邻构建相似度矩阵
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WmFPdtd7-1658234727324)(…/AppData/Roaming/Typora/typora-user-images/image-20220719155958072.png)]
for i = 1:p_data_num
for j = 1:k
S(i,neighbor(i,j)) = exp(-distence(i,j)*distence(i,j)/(sigma*sigma));
end
end
标签和示例数
[label_num,p_data_num] = size(train_p_target);
label_num,p_data_num] = size(train_p_target);



