在SAS中,我们使用DATA步来读入数据,DATA步在读入数据时实际上有两个阶段:
编译(compilation)
执行(execution)
过程如下:
- 在编译阶段中,逐个扫描语句,如果发现语法错误,SAS报错并终止运行;如果编译阶段中没有发现任何语法错误,进入执行阶段。
- 在执行过程中,DATA部读入第一条数据,在SAS中创建第一条观测;读入第二条数据,在SAS中创建第二条观测;读入第三条数据,在SAS中创建第三条观测……直至读入最后一条数据并在SAS中创建最后一条观测。我们可以把这个过程当做隐式循环(和DO,DO WHILE,DO UNTIL语句区分,它们是显示循环)。
可以用过下面的程序来看PDV的过程
data tes2t;
put "第" _n_ "次运行之前:"_all_;
set sashelp.class;
htm=height*2.54/100; /*身高转换为米*/
wtkg=weight*0.454; /*体重转换为公斤*/
put "第" _n_ "次运行之后:" _all_;
run;
运行之后可以查看日志:
日志就是PDV的过程所示:<