首页 > 解决方案 > 用于 !!在 SAS 中的调用符号中

问题描述

谁能告诉我这个数据步骤在做什么?我从未见过“!!”的用法 还是之前的“双感叹号”?

data _null_;
set &dset_in.;
if i = _n_ then do i=1 to nvar;
    call symput ("var" !! strip(put(_n_, 3.)), strip(Variabile));
    call symput ("min" !! strip(put(_n_, 3.)), strip(lim_inf));
    call symput ("max" !! strip(put(_n_, 3.)), strip(lim_sup));
end;
run;

循环的一般要点也会有所帮助,谢谢

标签: loopssasstripdo-loopssas-studio

解决方案


!!是根据文档的连接运算符:

https://documentation.sas.com/?docsetId=lrcon&docsetVersion=9.4&docsetTarget=p00iah2thp63bmn1lt20esag14lh.htm&locale=en

该代码正在创建一组宏变量 VAR001、MIN001 MAX001 以将值存储在数据集中。一般来说,这是一种不好的做法,如果你需要这样做,通常会有一种更简单的方法。


推荐阅读