在MATLAB中,可以使用kmeans函数来执行k-means聚类。
调用kmeans函数的语法是:
[idx, C] = kmeans(X, k)其中:
X是一个大小为m×n的矩阵,每行代表一个样本,每列代表一个特征。k是要进行聚类的簇数。函数返回两个输出参数:
idx是一个大小为m×1的向量,代表每个样本的簇索引。C是一个大小为k×n的矩阵,代表每个簇的中心。以下是一个使用kmeans函数进行聚类的示例:
% 生成测试数据X = [randn(100,2)*0.75+ones(100,2); randn(100,2)*0.5-ones(100,2)];% 执行聚类k = 2;[idx, C] = kmeans(X, k);% 可视化结果figure;scatter(X(:,1), X(:,2), 10, idx, 'filled');hold on;plot(C(:,1), C(:,2), 'k+', 'MarkerSize', 10);title('K-means Clustering');这个示例将生成一个包含两个簇的数据集,并使用kmeans函数对数据进行聚类。聚类结果将使用散点图进行可视化,并在图中显示每个簇的中心点。

