我正在研究SAS编程,有一件事令我困惑.我试着查看我正在使用的教科书中的冒号(:),但我找不到任何东西.
以下程序是其中一个问题,并且使用冒号程序确实读取了数据流数据,但没有冒号它看起来很有趣.
我怀疑ABRAMS的长度小于12,这就是为什么它不恰当地读取它,但由于某种原因它的结肠识别是好的.
我感谢您的帮助.
data a;
input #1 Lname $ Fname $ /
Department : $12. Salary : comma.10;
cards;
ABRAMS THOMAS
SALES $25,209.03
;
run;
proc print;
run;
Run Code Online (Sandbox Code Playgroud) 我正在研究一个问题,有一些我不明白的东西.
数据集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个观察结果,我很困惑......
谢谢.
我被要求在下面的程序中找到First的长度,我认为应该是15,但答案是200.
我的想法是SCAN(作者,1,',')具有价值Agatha,但由于我没有定义它的长度,所以长度与作者相同,即15.再次,First因为它的第一个字母而被视为A阿加莎,但因为没有指定长度仍然是15.
data test;
Author='Agatha Christie';
First=substr(scan(Author,1,','),1,1);
run;
proc contents;
run;
Run Code Online (Sandbox Code Playgroud)
我不知道200来自哪里......我可以得到一些帮助吗?
sas ×3