1

在 SAS 中,是否可以将%let语句引用到位于数据库中的值?

例如,my n in 的值%let n=50取决于在我的一个数据库中计算的某个值,例如,第一行加第一列。而且由于该值在我的循环中被修改了 100 次,我不想手动输入该值。

4

1 回答 1

6

有几种方法可以做到这一点。这里有两个:

proc sql;
 select a+b into :n
 from your_table
 where some_condition;
quit;

这用变量和&n的总和填充一个宏变量。您指定的条件应仅适用于表的一行。ab

另一种方法:

data tmp;
 set your_table;
 if _n_=1 then do;
  call symputn('n',a+b);
 end;
run;
于 2012-06-18T20:17:52.933 回答