全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
1626 1
2014-08-09
各位大神,求教一个问题。我定义一个宏变量
%let a=1;
然后执行data步,要求data步每读一条观测,就打印一下当前的a的值,然后a宏变量就加上一个1.这样的程序怎么实现啊。
再就是symput  symputx %let  select into 之间的区别。
symget  symgetn  和& 获得宏变量值的区别。

还有 data  a; call symput('x', 2); %put &x; run;
日志为什么显示没有x这样一个宏变量。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2014-8-12 10:00:57
data a;
  call symput('x',2);
run;
%put &x;
用call symput定义的宏变量在data步执行完之后才能调用,在离data步最近的宏程序或者open code中执行。

若要在data步里输出,则:
data a ;
  call symput('x',2);
  b=symget('x');
  put b;
run;
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群