clustering.m
来自「模式识别中的K均值算法」· M 代码 · 共 22 行
M
22 行
function [KindData,KindNum]=Clustering(Center,Data) %对数据进行分类
[DataRow,DataColumn]=size(Data);
[CenterRow,CenterColumn]=size(Center);
KindData=zeros(DataRow,DataColumn,CenterColumn);
KindNum=linspace(0,0,CenterColumn);
for i=1:DataColumn
Distance=linspace(0,0,CenterColumn);
for j=1:CenterColumn %中心点个数
for k=1:DataRow %维数
Distance(j)=Distance(j)+(Data(k,i)-Center(k,j)).^2;
end
end
Distance=sqrt(Distance); %取模值
[X,Y]=min(Distance); %返回最小值与列数(列数即时哪一个中心点)
KindData(:,KindNum(Y)+1,Y)=Data(:,i); %第i个数据分到其距离小的类中
KindNum(Y)=KindNum(Y)+1; %分别对各中心的分类计数
end
% KindData;
% KindNum;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?