matlab的kmeans包,k 均值聚类 - MATLAB kmeans - MathWorks 中国

这篇博客介绍了如何在MATLAB中使用kmeans进行聚类分析,将数据分为三个簇,并展示了如何将新数据分配给已知的簇。通过生成C代码并使用codegen工具,实现了将新数据分类的功能,确保了与MATLAB中结果的一致性。
摘要由CSDN通过智能技术生成

执行 k 均值聚类

使用三种分布生成训练数据集。

rng('default') % For reproducibility

X = [randn(100,2)*0.75+ones(100,2);

randn(100,2)*0.5-ones(100,2);

randn(100,2)*0.75];

使用 kmeans 将训练数据分成三个簇。

[idx,C] = kmeans(X,3);

绘制簇和簇质心。

figure

gscatter(X(:,1),X(:,2),idx,'bgm')

hold on

plot(C(:,1),C(:,2),'kx')

legend('Cluster 1','Cluster 2','Cluster 3','Cluster Centroid')

d78fefcbf6dbfbfdb0d181ad6bb64cf4.png

将新数据分配给现有簇

生成测试数据集。

Xtest = [randn(10,2)*0.75+ones(10,2);

randn(10,2)*0.5-ones(10,2);

randn(10,2)*0.75];

使用现有簇对测试数据集进行分类。使用 pdist2 找到距离每个测试数据点最近的质心。

[~,idx_test] = pdist2(C,Xtest,'euclidean','Small

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值