matlab kmeans函数
时间: 2023-09-04 18:10:29 浏览: 184
MATLAB Kmeans聚类.zip
Matlab中的kmeans函数是用于执行k-means聚类算法的函数。它的语法如下:
```
[idx, C] = kmeans(X, k)
```
其中,X是数据矩阵,每一行代表一个样本,每一列代表一个特征;k是聚类的簇数;idx是一个列向量,保存了每个样本所属的簇的索引;C是一个矩阵,每一行代表一个聚类中心。
以下是一个示例:
```matlab
% 生成示例数据
data = [randn(100,2)+1.5; randn(100,2)-1.5];
% 调用kmeans函数进行聚类
k = 2;
[idx, C] = kmeans(data, k);
% 绘制聚类结果
figure;
gscatter(data(:,1), data(:,2), idx);
hold on;
plot(C(:,1), C(:,2), 'kx', 'MarkerSize', 10, 'LineWidth', 2);
legend('Cluster 1', 'Cluster 2', 'Centroids');
```
这个示例中,我们生成了一个二维的示例数据,并使用kmeans函数将数据分为两个簇。最后,使用gscatter函数将聚类结果可视化,并用黑色的"x"标记表示聚类中心。
阅读全文