全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
3474 2
2011-10-04

66.The following SAS program is submitted:

  data WORK.SALES;
     do Year=1 to 5;
        do Month=1 to 12;
           X + 1;
        end;
     end;
  run;

How many observations are written to the WORK.SALES data set?

     A. 0
     B. 1
     C. 5
     D. 60

Answer: B

本文属于博客:http://crackman.net 版权归作者所有,欢迎转载!如有转载,请务必注明出处!未经本文作者同意不得用于商业应用。

这里主要考虑的是循环结束之后才输出到数据集WORK.SALES中。
X + 1;
等价于
retain x 0;
x=x+1;
如下:
year=1 month 1 x=1
       month 2 x=上一次X的值+1=2
       month 3 x=month为2时X的值,也就是2,所以此时X=3。
注意这一语句执行一直在DO 循环中,X是不断的被改变的,所以当循环结束之后,X才输出到数据集中,所以只有一个观测对象。
如何把每一步的X输出呢?
可以思考一下。

原文来自:http://crackman.net/?p=393

二维码

扫码加我 拉你入群

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

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

全部回复
2011-10-8 09:07:27
落了一个output
二维码

扫码加我 拉你入群

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

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

2011-11-25 20:06:41
data WORK.SALES;
     do Year=1 to 5;
        do Month=1 to 12;
           X + 1;
                   output;
        end;
               
     end;
  run;
这个结果是60
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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