⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rule_construct.m

📁 决策树
💻 M
字号:
function preclass=rule_construct(rule_b,class_value,cla_p,ppp,b)
preclass=0;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
cla_point_0_0_0=cla_p(8);
cla_point_0_0_1=cla_p(9);
cla_point_0_1_0=cla_p(10);
cla_point_0_1_1=cla_p(11);
cla_point_1_0_0=cla_p(12);
cla_point_1_0_1=cla_p(13);
cla_point_1_1_0=cla_p(14);
cla_point_1_1_1=cla_p(15);
cla_point_0_0=cla_p(4);
cla_point_0_1=cla_p(5);
cla_point_1_0=cla_p(6);
cla_point_1_1=cla_p(7);
cla_point_0=cla_p(2);
cla_point_1=cla_p(3);
cla_point=cla_p(1);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
class_value_0_0_0=class_value(8);
class_value_0_0_1=class_value(9);
class_value_0_1_0=class_value(10);
class_value_0_1_1=class_value(11);
class_value_1_0_0=class_value(12);
class_value_1_0_1=class_value(13);
class_value_1_1_0=class_value(14);
class_value_1_1_1=class_value(15);
class_value_0_0=class_value(4);
class_value_0_1=class_value(5);
class_value_1_0=class_value(6);
class_value_1_1=class_value(7);
class_value_0=class_value(2);
class_value_1=class_value(3);
class_value_root=class_value(1);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
pp=ppp(1);
p_0=ppp(2);
p_1=ppp(3);

p_0_0=ppp(4);
p_0_1=ppp(5);
p_1_0=ppp(6);
p_1_1=ppp(7);

p_0_0_0=ppp(8);
p_0_0_1=ppp(9);
p_0_1_0=ppp(10);
p_0_1_1=ppp(11);
p_1_0_0=ppp(12);
p_1_0_1=ppp(13);
p_1_1_0=ppp(14);
p_1_1_1=ppp(15);

p_0_0_0_0=ppp(16);
p_0_0_0_1=ppp(17);
p_0_0_1_0=ppp(18);
p_0_0_1_1=ppp(19);
p_0_1_0_0=ppp(20);
p_0_1_0_1=ppp(21);
p_0_1_1_0=ppp(22);
p_0_1_1_1=ppp(23);
p_1_0_0_0=ppp(24);
p_1_0_0_1=ppp(25);
p_1_0_1_0=ppp(26);
p_1_0_1_1=ppp(27);
p_1_1_0_0=ppp(28);
p_1_1_0_1=ppp(29);
p_1_1_1_0=ppp(30);
p_1_1_1_1=ppp(31);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
pre=zeros(30,1);
for i=1:30
    if ppp(i+1)>=pp;
        pre(i)=1;
    end
end
if rule_b(1)==1
    if rule_b(2)==1
        if rule_b(4)==1
            if rule_b(8)==1
                if b(cla_point)<class_value_root & b(cla_point_0)<class_value_0 & b(cla_point_0_0)<class_value_0_0 & b(cla_point_0_0_0)<class_value_0_0_0
                    preclass=pre(15);
                end
                if b(cla_point)<class_value_root & b(cla_point_0)<class_value_0 & b(cla_point_0_0)<class_value_0_0 & b(cla_point_0_0_0)>=class_value_0_0_0
                    preclass=pre(16);
                end
            else
                if b(cla_point)<class_value_root & b(cla_point_0)<class_value_0 & b(cla_point_0_0)<class_value_0_0
                    preclass=pre(7);
                end
            end 
            if rule_b(9)==1
                if b(cla_point)<class_value_root & b(cla_point_0)<class_value_0 & b(cla_point_0_0)<class_value_0_0 & b(cla_point_0_0_1)<class_value_0_0_1
                    preclass=pre(17);
                end
                if b(cla_point)<class_value_root & b(cla_point_0)<class_value_0 & b(cla_point_0_0)<class_value_0_0 & b(cla_point_0_0_1)>=class_value_0_0_1
                    preclass=pre(18);
                end
            else
               if b(cla_point)<class_value_root & b(cla_point_0)<class_value_0 & b(cla_point_0_0)>=class_value_0_0
                preclass=pre(8);             
               end 
            end
        else
            if b(cla_point)<class_value_root & b(cla_point_0)<class_value_0
                preclass=pre(3);
            end
        end
        if rule_b(5)==1
            if rule_b(10)==1
                if b(cla_point)<class_value_root & b(cla_point_0)>=class_value_0 & b(cla_point_0_1)<class_value_0_1 & b(cla_point_0_1_0)<class_value_0_1_0
                    preclass=pre(19);
                end
                if b(cla_point)<class_value_root & b(cla_point_0)>=class_value_0 & b(cla_point_0_1)<class_value_0_1 & b(cla_point_0_1_0)>=class_value_0_1_0
                    preclass=pre(20);
                end
            else
                if b(cla_point)<class_value_root & b(cla_point_0)>=class_value_0 & b(cla_point_0_1)<class_value_0_1
                    preclass=pre(9);
                end
            end
            if rule_b(11)==1
                if b(cla_point)<class_value_root & b(cla_point_0)>=class_value_0 & b(cla_point_0_1)>=class_value_0_1 & b(cla_point_0_1_1)<class_value_0_1_1
                    preclass=pre(21);
                end
                if b(cla_point)<class_value_root & b(cla_point_0)>=class_value_0 & b(cla_point_0_1)>=class_value_0_1 & b(cla_point_0_1_1)>=class_value_0_1_1
                    preclass=pre(22);
                end
            else
                 if b(cla_point)<class_value_root & b(cla_point_0)>=class_value_0 & b(cla_point_0_1)>=class_value_0_1
                     preclass=pre(10);
                 end
            end
        else
            if b(cla_point)<class_value_root & b(cla_point_0)>=class_value_0
                preclass=pre(4);
            end
        end
    else
        if b(cla_point)<class_value_root
            preclass=pre(1);
        end
    end
    if rule_b(3)==1
        if rule_b(6)==1
            if rule_b(12)==1
                if b(cla_point)>=class_value_root & b(cla_point_1)<class_value_1 & b(cla_point_1_0)<class_value_1_0 & b(cla_point_1_0_0)<class_value_1_0_0
                    preclass=pre(23);
                end
                if b(cla_point)>=class_value_root & b(cla_point_1)<class_value_1 & b(cla_point_1_0)<class_value_1_0 & b(cla_point_1_0_0)>=class_value_1_0_0
                    preclass=pre(24);
                end
            else
                if b(cla_point)>=class_value_root & b(cla_point_1)<class_value_1 & b(cla_point_1_0)<class_value_1_0
                   preclass=pre(11);
               end
            end  
            if rule_b(13)==1
                if b(cla_point)>=class_value_root & b(cla_point_1)<class_value_1 & b(cla_point_1_0)>=class_value_1_0 & b(cla_point_1_0_1)<class_value_1_0_1
                    preclass=pre(25);
                end
                if b(cla_point)>=class_value_root & b(cla_point_1)<class_value_1 & b(cla_point_1_0)>=class_value_1_0 & b(cla_point_1_0_1)>=class_value_1_0_1
                    preclass=pre(26);
                end
            else
                if b(cla_point)>=class_value_root & b(cla_point_1)<class_value_1 & b(cla_point_1_0)>=class_value_1_0
                    preclass=pre(12);
                end
            end 
        else
            if b(cla_point)>=class_value_root & b(cla_point_1)<class_value_1
                preclass=pre(5);
            end
        end
        if rule_b(7)==1
            if rule_b(14)==1
                if b(cla_point)>=class_value_root & b(cla_point_1)>=class_value_1 & b(cla_point_1_1)<class_value_1_1 & b(cla_point_1_1_0)<class_value_1_1_0
                    preclass=pre(27);
                end
                if b(cla_point)>=class_value_root & b(cla_point_1)>=class_value_1 & b(cla_point_1_1)<class_value_1_1 & b(cla_point_1_1_0)>=class_value_1_1_0
                    preclass=pre(28);
                end
            else
                if b(cla_point)>=class_value_root & b(cla_point_1)>=class_value_1 & b(cla_point_1_1)<class_value_1_1
                    preclass=pre(13);
                end
            end
            if rule_b(15)==1
                if b(cla_point)>=class_value_root & b(cla_point_1)>=class_value_1 & b(cla_point_1_1)>=class_value_1_1 & b(cla_point_1_1_1)<class_value_1_1_1
                    preclass=pre(29);
                end
                if b(cla_point)>=class_value_root & b(cla_point_1)>=class_value_1 & b(cla_point_1_1)>=class_value_1_1 & b(cla_point_1_1_1)>=class_value_1_1_1
                    preclass=pre(30);
                end
            else
                if b(cla_point)>=class_value_root & b(cla_point_1)>=class_value_1 & b(cla_point_1_1)>=class_value_1_1
                    preclass=pre(14);
                end
            end
        else
            if b(cla_point)>=class_value_root & b(cla_point_1)>=class_value_1
                preclass=pre(6);
            end
        end
    else
        if b(cla_point)>=class_value_root
            preclass=pre(2);
        end
    end
end

           
       
    

⌨️ 快捷键说明

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