目前我正在使用类似于上一个问题中使用的方法,
但稍作修改使其能够更轻松地处理大量变量。以下代码确保 n6 具有与 dsid2 引用的数据集相同的变量。
data n6;
set n5;
dsid=open('n5');
dsid2=open(/*empty template dataset*/);
varsn=attrn(dsid2,nvars);
i=1;
do until i = varsn;
if varnum(dsid,varname(dsid2,i))=0 then do;
varname(dsid2,i)="";
format varname(dsid2,i) varfmt(dsid2,i);
end;
i=i+1;
end;
run;
如果我理解正确,SAS 将为每个观察运行整个 do 循环。当我开始使用更大的数据集时,我开始经历缓慢的运行时间,我想知道是否有人有更好的技术?