PROC PRINT和PROC意思

hyg*_*g17 1 sas

我正在研究一个问题,有一些我不明白的东西.

数据集sasdata.prdsales包含5,000个观察值.

 libname sastemp 'SAS-data-library';
      options obs=500;
      proc print data=sasdata.prdsales (firstobs=100);
 run; 
 options obs=max;
 proc means data=sasdata.prdsales(firstobs=500);
 run;
Run Code Online (Sandbox Code Playgroud)

我的理解是OBS =指定SAS将处理的观测数量,因此对于PROC PRINT语句,我认为从观测编号100开始,以观测编号499结束,将处理500个观测值.

对于PROC MEANS步骤,OBS = MAX指示SAS处理所有观测,但由于起始观测值是500,观测总数将从500到5,000,即4,501次观测.

然而,这个问题的答案说PROC PRINT有501个观察结果,我很困惑......

谢谢.

Ric*_*ard 5

OBS=不是要处理的观察数量,您应该将其视为一个LASTOBS=选项(不存在)

OBS=500 因为1的隐式FIRSTOBS,将单独处理500行.

对于FIRSTOBS=100 OBS=500行100到500 的有效情况将被处理,或401行.