?? assort.m
字號:
function [a1,a2,n1,n2]=assort(x1,x2,n);
%函數assort即實現將樣本x1按分解聚類法分成a1,a2兩類
%x1為待分類的樣本矩陣,x2類型2的樣本矩陣
%n為x1,x2中的樣本總數
%returns:
%a1,a2為分類后類型1,類型2的樣本矩陣
%n1,n2分別為類型1,類型2的樣本數目
a1=x1;
a2=x2;
[n1,nc1]=size(a1);
n2=n-n1;
maxe=zeros(0);
for k=1:n;
e=zeros(1,n1);
for i=1:n1;
e(1,i)=countE(i,a1,a2,n);
end
maxe(1,k)=max(max(e)); %求e值矩陣的最大值
[r,c]=find(e==maxe(1,k)); %r為最大值所在的行數,c為列數
if k==1
a2(k,:)=a1(c,:);
a1(c,:)=[];
n1=n1-1;
n2=n2+1;
else
if maxe(1,k)<maxe(1,k-1)
break;
else
atemp=a2';
a1m=a1';
a2m=[atemp,a1m(:,c)];
a2=a2m';
a1(c,:)=[];
[rc,nc]=size(c);
if nc>1
n1=n1-nc;
n2=n2+nc;
else
n1=n1-1;
n2=n2+1;
end
end
end
end
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -