更新时间:2020/6/19
聚类算法
1.k-均值算法
这个k-均值算法比较简单,原理就不赘述,直接上代码
代码如下:
%%%%%%%主程序,令k=3
clc;
clear all;
x=rand(50,2);
%x=[0 0;0 1;1 0;1 1;1 2;2 1;2 2;3 2;6 6;6 7;7 6;7 7;7 8;8 6;8 7;8 8;8 9;8 10;9 7;9 8;9 9];
index=Kmean(x,3);%由于颜色的限制,最多可以有7类
%%%%%%%%%%仅适用于2维
function [index]=Kmean(x,num)
%k-均值聚类算法
%x 为样本矩阵 n(样本数)*m(维数)
%num 为聚类数
nData=size(x,1);% 样本数
index=zeros(1,nData);% x属于第几类
center=zeros(num,2);% 聚类中心坐标
for n=1:nData
a=ceil(nData/num);
index