文档介绍:粗糙集 属性约简
题目:  SARS 诊断
注:这是我学粗糙集时老师给的作业
 
U
干咳
呼吸困难
 血液检测
高烧38度
 X射线
浓痰
血细胞多
寒战
肌肉酸痛
乏力
胸膜痛
头痛
非典
1
1
1
 1
1
0
0
0
0
1
1
0
1
1
2
0 
0
 
3
1
0
 1
0
0
0
0
0
0
1
0
0
0
4
0 
0
 
5
1 
0
 
6
0
1
 
7
1
0
 
8
1
1
 1
1
0
0
0
0
1
1
0
1
1
9
1
0
 1
1
1
0
0
0
1
1
0
1
1
10
1 
1
 1
1
0
0
0
0
1
1
0
1
1
11
1 
0
 1
1
1
0
0
0
1
1
0
1
1
12
1 
0
 1
1
1
0
0
0
1
1
0
1
1
属性约简的顺序如下:求正域、生成未经处理的区分矩阵、对区分矩阵进行化简、求核、对已经处理过的区分矩阵进行属性约简。约简后的决策表有26行,所有12个属性都是正域中的属性,核为空
 
程序:
% main。mﻫtic;ﻫa=[ 1,1,1,1,0,0,0,0,1,1,0,1;
    0,0,0,0,0,0,0,0,0,0,0,0;ﻫ    1,0,1,0,0,0,0,0,0,1,0,0;
    0,0,0,1,1,1,1,0,1,0,1,1;ﻫ    1,0,0,1,1,1,1,1,0,1,1,0;ﻫ    0,1,0,1,1,1,1,1,1,0,0,1;ﻫ    1,0,0,0,1,1,1,0,0,1,1,1;ﻫ    1,1,1,1,0,0,0,0,1,1,0,1;ﻫ    1,0,1,1,1,0,0,0,1,1,0,1;ﻫ    1,1,1,1,0,0,0,0,1,1,0,1;ﻫ    1,0,1,1,1,0,0,0,1,1,0,1;ﻫ    1,0,1,1,1,0,0,0,1,1,0,1 ];ﻫd=[1;0;0;0;0;0;0;1;1;1;1;1];
pos=posCD(a,d);ﻫdismat=dismatrix(a,d,pos);ﻫdism=disbe(dismat);ﻫcore=cor(dism);ﻫ[red,row]=redu(dism);ﻫtime=toc
% dismatrix。mﻫ% 生成未经处理的区分矩阵dismat
function dismat=dismatrix(a,d,pos)ﻫ[m,n]=size(a);ﻫp=1;
index1=0;index2=0;index=0;
dis=-1*ones(m*(m-1)/2,n);ﻫfor i=1:mﻫ    for j=i+1:mﻫ        if (isxbelongtopos(i,pos)&~isxb