刚从sas base的考场出来,在长沙考的,100%通过,题库依旧没变,题目真的很简单。只求过的话看SAS base95题足够。一共有62道题,110分钟。其中填空题两道。我考的两道分别为:
(1)根据变量排序:sort the dataset by Expenses within IDNmuber
proc sort data=work.salary;
by_________;
run;(答案为:IDNmuber Expenses)
(2)Find函数:data a;
text='Aus-ustralia';
number=find(text, 'US','i',5);
run;(number的值为多少:____; 答案为:5)
其他60道选择题,有60%是sas base95题中的原题(选项可能会有变动,值有变化,不能靠死记答案,理解了就肯定能过)。其他题有几道是50题或者123题中的,以及机经中提及的题目。反正所有考点几乎都包括在这几套练习题中,我只遇到了一个新的知识点(contain函数):
The SAS data set WORK.ONE contains a numeric variable named Num and a character variable named Char:
WORK.ONE
Num Char
--- ----
1 23
3 23
1 77
The following SAS program is submitted:
proc print data=WORK.ONE;
where Num=contain(1);
run;
What is output?
A.
Num Char
--- ----
1 23
B.
Num Char
--- ----
1 23
1 77
C.
Num Char
--- ----
1 23
3 23
1 77
D. No output is generated
答案应该是D,因为contain函数为字符型函数,而变量NUM为数值型变量。
我记得的稍微变形的题目有:
The following SAS program is submitted:
data WORK.DATE_INFO;
Day="15" ;
Yr=1960 ;
X=mdy(Day,01,Yr) ;
run;
What is the value of the variable X?
答案应该是14,因为1960/01/01在sas中储存为0。
还有一道题
given the SAS data set SASDATA.TWO:
X Y
-- --
5 2
3 1
5 6
The following SAS program is submitted:
data SASUSER.ONE SASUSER.TWO OTHER;
set SASDATA.TWO;
if X eq 5 then output SASUSER.ONE;
if Y lt 5 then output SASUSER.TWO;
else output WORK.OTHER;
run;
What is the result?
A.
data set SASUSER.ONE has 5 observations
data set SASUSER.TWO has 5 observations
data set WORK.OTHER has 3 observations
B.
data set SASUSER.ONE has 2 observations
data set SASUSER.TWO has 2 observations
data set WORK.OTHER has 1 observations
C.
data set SASUSER.ONE has 2 observations
data set SASUSER.TWO has 2 observations
data set WORK.OTHER has 5 observations
D. No data sets are output. The DATA step fails execution due to syntax errors.
答案应该是B,注意第一个if后面没有接else。
还有一道题:
36.Given the contents of the raw data file 'EMPLOYEE.TXT':
----+----10---+----20---+----30--
Xing 19 2 2004 ACCT
Bob 22 5 2004 MKTG
Jorge 14 3 2004 EDUC
The following SAS program is submitted:
data WORK.EMPLOYEE;
infile 'EMPLOYEE.TXT';
input
@1 FirstName $
@15 StartDate
@25 Department $;
run;
Which SAS informat correctly completes the program?
A. date9.
B. mmddyy10.
C. ddmmyy10.
D. mondayyr10.
答案应该是C
有一道题为:某数据集b中变量Num的长度为8,运行以下程序:
data a;
set b;
lenth num $10;
formata num 12.;
run;
问:在数据集a中,Num变量的长度为多少?答案应该是8。
有一道题为:
Given the contents of the raw data file TYPECOLOR.DAT:
----+----10---+----20---+----30
daisy $2300
The following SAS program is submitted:
data FLOWERS;
infile 'TYPECOLOR.DAT' truncover;
input
Type $ 5. @10 Color;
run;
What are the values of the variables Type and Color?
结果应该为 Type=daisy, Color=.,因为$2300不是标准数值,需指定informat。
还有一个考点为:total=total+salary。salary为数据集中存在的变量,total在数据集中不存在。这个语句执行后,total的值全部为缺失,因为a=b+c,只要b和c中存在缺失值,则a也为缺失。而sum函数会忽略缺失值。
还有一个考点为:proc mean程序默认对所有非缺失数值变量进行分析。
sas base的考试很容易,但我觉得我们不仅仅是为了考证而去参加考试,更重要的是通过考试的压力,让我们可以全面的学习sas软件。我准备这次考试的时间很漫长,从研一就想考,开始断断续续的看了sas online tutor,后来又看了下the little sas这本书,现在有中文版了,感觉这本书挺简单的,适合入门者学习。真正下定决心准备考试一共约有10天,首先认真看完crackman的sas base70题,然后再做了sas base50+123题。接着复习了以前看online tutor时做的笔记。在考前做了sas base95题,在网上稍微看了几个关于机经的帖子,帖子大都大同小异,差不多,看几个就OK了。
附上我考sas base时的参考资料,祝大家顺利通过考试~
继续奋战sas advanced~