cluster.m

来自「用matlab实现聚类算法」· M 代码 · 共 25 行

M
25
字号
%cluster.m最短距离聚类法
function result=cluster(vector);
[a,b]=size(vector);
for k=1:(a-1)
    [c,d]=size(vector);
    fprintf('第%g次聚类:\n',k);
    [e,f,g]=min1(vector)
    fprintf('最小值=%g将第%g区和第%g区并为一类,记着G%g\n\n',g,e,f,c+1);
    for l=1:c
        if l<=min2(e,f)
         vector(l,c+1)=min2(vector(l,e),vector(l,f));
        elseif l<max(e,f)
             vector(l,c+1)=min2(min2(vector(e,l),vector(l,f)),min2(vector(l,e),vector(f,l)));
        else
         vector(c+1,l)=min2(vector(e,l),vector(f,l));   
        end
        vector(c+1,l)=inf;
    end
    vector(1:c+1,f)=inf;
    vector(1:c+1,e)=inf;
    vector(e,1:c+1)=inf;
    vector(f,1:c+1)=inf;
    vector(c+1,c+1)=inf;
end

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?