SAS中文论坛
标题:
求助:SAS宏中变量引用问题
[打印本页]
作者:
shiyiming
时间:
2009-8-3 16:17
标题:
求助:SAS宏中变量引用问题
说明:
现有一张名为table1的数据表,表中有很多变量,需要对每个变量进行相同的处理步骤,故写此宏。
例如,其中一个变量为education,有三个特征值1,2,3,
分别将三个特征值赋给了三个宏变量,即 edu_1 =1, edu_2=2, edu_3=3;
%macro abc(dstname = ,varname= );
……
edu_1
edu_2
edu_3
……
……
data TEMP;
set &dstname;
%if &varname = &edu_1 %then %do; ……%end;
run;
%mend;
%abc(dstname =table1 ,varname=education );
当程序运行到上述代码中data步时,日志中提示:
&varname解析成education
&edu_1解析成 1
if语句比较的是 education 和 1 是否相等,
而我的本意是想比较 变量education的取值和1 是否相等。
请问,我该怎么修改程序啊?
谢谢!
作者:
shiyiming
时间:
2009-8-3 16:28
标题:
Re: 求助:SAS宏中变量引用问题
别把IF语句写成宏语句
if &varname = &edu_1 then ...;
作者:
shiyiming
时间:
2009-8-3 16:54
标题:
Re: 求助:SAS宏中变量引用问题
搞定了!
谢谢hopewell!
欢迎光临 SAS中文论坛 (https://mysas.net/forum/)
Powered by Discuz! X3.2