欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    属性约简(MATLAB算法)有实例有讲解(共7页).doc

    • 资源ID:13442514       资源大小:112.50KB        全文页数:7页
    • 资源格式: DOC        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    属性约简(MATLAB算法)有实例有讲解(共7页).doc

    精选优质文档-倾情为你奉上粗糙集 属性约简题目:  SARS 诊断注:这是我学粗糙集时老师给的作业 U干咳呼吸困难 血液检测高烧38度 X射线浓痰血细胞多寒战肌肉酸痛乏力胸膜痛头痛非典111 1100001101120 0 00000000000310 1000000100040 0 0111101011051 0 01111101100601 01111110010710 00111001110811 11000011011910 11100011011101 1 11000011011111 0 11100011011121 0 11100011011属性约简的顺序如下:求正域、生成未经处理的区分矩阵、对区分矩阵进行化简、求核、对已经处理过的区分矩阵进行属性约简。约简后的决策表有26行,所有12个属性都是正域中的属性,核为空 程序:% main.mtic;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% 生成未经处理的区分矩阵dismatfunction 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)&isxbelongtopos(j,pos).                |(isxbelongtopos(i,pos)&isxbelongtopos(j,pos).                |(isxbelongtopos(i,pos)&isxbelongtopos(j,pos)&isxybelongtoindD(i,j,d)            index2=1;        end        if index2=0            continue;        end        for k=1:n            if a(i,k)=a(j,k)                dis(p,k)=1;                index1=1;            else dis(p,k)=0;            end        end        if index1=1            p=p+1;index=1;        end        index1=0;        index2=0;    endendif p<=m*(m-1)/2     if index=0        dismat=;        return;    end    if dis(p,1)=-1        p=p-1;    endelse p=m*(m-1)/2;enddismat=dis(1:p,:);% redu.m% 对已经处理过的区分矩阵进行知识约简function red,row=redu(dism)m,n=size(dism);red=;row=0;if m<=0    return;endfor i=1:n    if dism(1,i)=0        row=row+1;    endendred(1:row,:)=zeros(row,n);j=1;for i=1:row    while dism(1,j)=0        j=j+1;    end    red(i,j)=1;    j=j+1;endtemp=;tempdis=;rowd=0;rowd1=0;for i=2:m    j=1;    while j<=row        temp=uni(dism(i,:),red(j,:);        s,n=size(temp);        rowd1=rowd+s;        tempdis(rowd+1:rowd1,:)=temp;        rowd=rowd1;        j=j+1;        temp=;    end    red=;    red=disbe(tempdis);    tempdis=;    row,n=size(red);     rowd=0;rowd1=0;end % disbe.m% 对区分矩阵或者约简矩阵进行化简即去掉包含关系function dism=disbe(dis)m,n=size(dis);p=m;for i=1:m    if dis(i,1)=-1        for j=1:m             if i=j & dis(j,1)=-1                 if dis(i,:)<=dis(j,:)                     dis(j,1)=-1;                     p=p-1;                 elseif dis(i,:)>=dis(j,:)                     dis(i,:)=dis(j,:);                     dis(j,1)=-1;                     p=p-1;                 end             end                       end    endenddism=ones(p,n);j=1;for i=1:p    while j<=m & dis(j,1)=-1        j=j+1;    end    dism(i,:)=dis(j,:);    j=j+1;end % posCD.m% a为条件属性矩阵,d为决策属性向量% pos为正域,保存条件属性矩阵的索引值function pos=posCD(a,d)m,n=size(a);p=m;index=0;for i=1:m    if a(i,1)=-1        for j=i+1:m            if a(j,1)=-1 &(a(i,:)=a(j,:)&d(i)=d(j)                a(j,1)=-1;p=p-1;index=1;            end        end        if index=1            a(i,1)=-1;p=p-1;index=0;        end    endendpos=zeros(p,1);i=1;for r=1:p    while a(i,1)=-1&i<=m        i=i+1;    end    pos(r)=i;    r=r+1;    i=i+1;end % cor.m% 对已经处理过的区分矩阵求核function core=cor(dism)m,n=size(dism);core1=zeros(1,n);number=0;for i=1:m    num=0;p=0;    for j=1:n        if dism(i,j)=0            num=num+1;            p=j;        end    end    if num=1        core1(p)=1;        number=number+1;    endendif number=0    core=0;else    core=zeros(1,number);    j=1;    for i=1:number        while core1(j)=0            j=j+1;        end        core(i)=core1(j);        j=j+1;    endend % uni.m%对区分矩阵的第i行和red(j,:)运算,即将a中%所有的1分别插入到red(j,:)中,待去掉包含关系function tempred=uni(disa,red)m,n=size(red);num=0;for i=1:n    if disa(i)=0        num=num+1;    endendtempred=ones(m*num,n);temp=;j=1;for i=1:num    while disa(j)=0        j=j+1;    end    temp=red;    temp(:,j)=ones(m,1);    tempred(i-1)*m+1:i*m,:)=temp;    j=j+1;end % isxbelongtopos.m% 判断x是否在正域pos中% x为索引值% 返回值p,如果x在pos中p=1否则p=0function p=isxbelongtopos(x,pos)m,n=size(pos);p=0;if x<=0    p=-1;    return;endfor i=1:m    if x=pos(i)        p=1;        break;    endend% isxybelongtoindD.m% 判断x,y是否在indD中% x,y为索引值% 返回值p,如果x,y在indD中p=1否则p=0function p=isxybelongtoindD(x,y,d)if x<=0 | x>size(d) | y<=0 | y>size(d)    p=-1;    return;endif d(x)=d(y)    p=1;else p=0;end 约简后的决策表专心-专注-专业

    注意事项

    本文(属性约简(MATLAB算法)有实例有讲解(共7页).doc)为本站会员(飞****2)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开