sas:宏的存储调用

METHOD1

/*存储宏*/
OPTIONS SASMSTORE=SASUSER MSTORED MAUTOSOURCE;

%MACRO DATASET_BID_SORT(input_table,by_var,output_table)/STORE;
PROC SORT DATA=&input_tableOUT=&output_table;
BY &by_var;
%MEND;

 /*调用宏*/

LIBNAME S '.';
OPTIONS SASMSTORE=SASUSER MSTORED MAUTOSOURCE;

%DATASET_BID_SORT(S.final,BID0,S.BID);

METHOD2

/*宏,放在MACRO_BID_SORT.sas文件下*/

%MACRO DATASET_BID_SORT(input_table,by_var,output_table);

DATA temp1;
SET &input_table;
IF w1>80;
RUN;

DATA temp2(DROP=R I);
SET temp1;
LENGTH BID0 $12 R $6 I $6;
R=FLOOR(RANUNI(123)*899999+100000);
I=100000+_N_;
BID0=CATS(R,I);
RUN;

PROC SORT DATA=temp2 OUT=&output_table;
BY &by_var;
%MEND;

 /*宏的存储

*建立一个autoexec.sas文件,放在sas.exe同文件夹下,打开SAS会自动执行。写入如下语句,**是MACRO_BID_SORT.sas文件路径*/

%include "**\MACRO_BID_SORT.sas";/*可以写多个执行语句*/

/*调用宏的语句*/

LIBNAME S '.';

%DATASET_BID_SORT(S.final,BID0,S.BID);

/*method1的方法比较方便*/

转载于:https://www.cnblogs.com/Anni-love-Ferris-wheel/p/6654892.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值