在SAS中创建同一变量的两个不同实例

在SAS中创建同一变量的两个不同实例,sas,Sas,我需要对一个变量class进行排序,以创建一个新变量num。对于缺少的类,num=1。对于“EXE”类,num需要等于2和1。我需要有两个相同EXE行的实例,一个需要num=1,另一个需要num=2 这是我所拥有的数据,因为我不知道如何生成两次EXE并将其应用于1和2 data work.ALL ; set work.test1 work.test2 work.test3; if class="EXE" then num=2; else if class=" "

我需要对一个变量class进行排序,以创建一个新变量num。对于缺少的类,num=1。对于“EXE”类,num需要等于2和1。我需要有两个相同EXE行的实例,一个需要num=1,另一个需要num=2

这是我所拥有的数据,因为我不知道如何生成两次EXE并将其应用于1和2

data work.ALL ;
        set work.test1 work.test2 work.test3;
    if class="EXE" then num=2;
    else if class=" " then num=1;
run;

我认为这应该奏效:

data work.ALL ;
set work.test1 work.test2 work.test3;
if class=" " then do;
num=1;
output;
end;
else if class="EXE" then do;
num = 1; output;
num = 2; output;
end;
run;

如果我理解你的问题是正确的,那么这应该可以解决问题

data work.ALL ;
        set work.test1 work.test2 work.test3;
    if class="EXE" then do;
    num=2;output;
    num=1;output;
    end;
    else if class=" " then num=1;
output;    
run;