data ex2(rename=(a=ma b=mb));
set ahuige (obs=0);
k=.;
run;
%macro sxl (data= , outfile=ex2);
data _null_;
set &data. (drop=_all_) nobs=nmax;
call symput('nmax',nmax);
run;
%do i=1 %to &nmax-1;
data ex(keep=k ma mb);
set &data. ;
k=&i;
if _N_ <= &i then
do;
aa1+A;bb1+B;
if missing(A) then missa1+1;
if missing(B) then missb1+1;
end;
else do;
aa2+A;bb2+B;
if missing(A) then missa2+1;
if missing(B) then missb2+1;
end;
if _N_=&nmax then
do;
ma=aa1/(&i.-missa1)- aa2/(&nmax-&i.-missa2);
mb=bb1/(&i.-missb1)- bb2/(&nmax-&i.-missb2);
output;
end;