matlab的KNN算法代码
时间: 2024-05-19 22:08:45 浏览: 213
KNN算法matlab代码
KNN(K-Nearest Neighbors)算法是一种常用的分类和回归算法,它基于样本之间的距离来进行分类或预测。下面是一个简单的MATLAB代码示例,用于实现KNN算法:
```matlab
% 假设我们有一个训练集trainData和对应的标签trainLabel
% testData是我们要进行分类或预测的数据
% 设置K值
K = 3;
% 计算测试数据与训练数据之间的距离
distances = pdist2(testData, trainData);
% 对距离进行排序,得到最近的K个邻居
[sortedDistances, indices] = sort(distances);
% 统计最近的K个邻居的标签
kNearestLabels = trainLabel(indices(1:K));
% 统计最近邻居中出现最频繁的标签
predictedLabel = mode(kNearestLabels);
```
上述代码中,我们首先设置了K值,即选择最近的K个邻居。然后,通过计算测试数据与训练数据之间的距离,可以得到一个距离矩阵。接着,我们对距离进行排序,找到最近的K个邻居,并统计它们的标签。最后,通过统计最近邻居中出现最频繁的标签,即可得到预测结果。
阅读全文