这个也好意思拿出来卖?
%macro Extremes(data, Var, IDVar, N, data1);
data temp;
 set &data;
 keep &IDVar &Var;
run;
 proc univariate data=temp noprint;
 var &Var;
 output out=temp_u   STD=VSTD   Mean=VMean;
run;
data _null_;
 set temp_u;
 call symput('STD', VSTD);
 call symput('Mean', VMean);
run;
%let ULimit=%sysevalf(&Mean + &N * &STD);
%let LLimit=%sysevalf(&Mean - &N * &STD);
data &data1;
 set temp;
 if &Var < &Llimit or &Var > &ULimit;
run;
/*proc datasets library=work nodetails nolist ;
delete temp temp_u;
quit;*/
%mend;
/********data数据集,Var连续变量,IDVar唯一标识,N=2异常值、N=3极端异常值,data1生成的新数据集/