在SAS中,是否可以将%let
语句引用到数据库中的值?
例如,%let n=50
中我的n的值取决于我的一个数据库中计算的某些值,例如,第一行加第一列。由于该值在我的循环中被修改了100次,我不想手动输入该值。
答案 0 :(得分:6)
有几种方法可以做到这一点。这是两个:
proc sql;
select a+b into :n
from your_table
where some_condition;
quit;
这会将一个宏变量&n
与变量a
和b
的总和进行对比。您指定的条件应仅对表的一行为真。
另一种方法:
data tmp;
set your_table;
if _n_=1 then do;
call symputn('n',a+b);
end;
run;