SASBase认证考试(70真题答案详解).pdf

上传人:白大夫 文档编号:5305201 上传时间:2020-04-08 格式:PDF 页数:41 大小:334.26KB
返回 下载 相关 举报
SASBase认证考试(70真题答案详解).pdf_第1页
第1页 / 共41页
SASBase认证考试(70真题答案详解).pdf_第2页
第2页 / 共41页
SASBase认证考试(70真题答案详解).pdf_第3页
第3页 / 共41页
SASBase认证考试(70真题答案详解).pdf_第4页
第4页 / 共41页
SASBase认证考试(70真题答案详解).pdf_第5页
第5页 / 共41页
点击查看更多>>
资源描述

《SASBase认证考试(70真题答案详解).pdf》由会员分享,可在线阅读,更多相关《SASBase认证考试(70真题答案详解).pdf(41页珍藏版)》请在三一文库上搜索。

1、SAS Base认证考试 70 题 SAS分多个认证种类:base,advanced, clinic 等,但大多需要先通过base 认证。 但凡这类商业组织提供的考证,基本都是题库型,所以想考过难度并不大。 对于只想拿SAS认证的人,如果熟练掌握网上流传甚广的sas真题 70 题,通过base 认证基本就没问题。 Q 1 1. The following SAS program is submitted: data WORK.TOTAL; set WORK.SALARY; by Department Gender; if First. then Payroll=0; Payroll+Wager

2、ate; if Last.; run; The SAS data set WORK.SALARY is currently ordered by Gender within Department. Which inserted code will accumulate subtotals for each Gender within Department? A. Gender B. Department C. Gender Department D. Department Gender 答案: A 本题知识点:自动变量 在 SAS读取数据时,在PDV 过程中会产生很多自动变量,在输出的数据集中

3、是不可见的。 FIRST.VARIABLE :同一个BY变量(组),若新的变量值第一次出现时,其first.variable值为 1。 LAST.VARIABLE :同一个BY变量(组),若新的变量值最后一次出现时,其last.variable 值为 1。 另外,在BY变量右面有多个变量时,先按第一个变量排序,若第一个变量的观测存在重复时,才按第二个 变量排序。 Q 2 Given the following raw data records in TEXTFILE.TXT: -|-10-|-20-|-30 John,FEB,13,25,14,27,Final John,MAR,26,17,2

4、9,11,23,Current Tina,FEB,15,18,12,13,Final Tina,MAR,29,14,19,27,20,Current The following output is desired: Obs Name Month Status Week1 Week2 Week3 Week4 Week5 1 John FEB Final $13 $25 $14 $27 . 2 John MAR Current $26 $17 $29 $11 $23 3 Tina FEB Final $15 $18 $12 $13 . 4 Tina MAR Current $29 $14 $19

5、$27 $20 Which SAS program correctly produces the desired output? A. data WORK.NUMBERS; length Name $ 4 Month $ 3 Status $ 7; infile TEXTFILE.TXT dsd; input Name $ Month $; if Month=FEB then input Week1 Week2 Week3 Week4 Status $; else if Month=MAR then input Week1 Week2 Week3 Week4 Week5 Status $; f

6、ormat Week1-Week5 dollar6.; run; proc print data=WORK.NUMBERS; run; B. data WORK.NUMBERS; length Name $ 4 Month $ 3 Status $ 7; infile TEXTFILE.TXT dlm=, missover; input Name $ Month $; if Month=FEB then input Week1 Week2 Week3 Week4 Status $; else if Month=MAR then input Week1 Week2 Week3 Week4 Wee

7、k5 Status $; format Week1-Week5 dollar6.; run; proc print data=WORK.NUMBERS; run; C. data WORK.NUMBERS; length Name $ 4 Month $ 3 Status $ 7; infile TEXTFILE.TXT dlm=,; input Name $ Month $ ; if Month=FEB then input Week1 Week2 Week3 Week4 Status $; else if Month=MAR then input Week1 Week2 Week3 Wee

8、k4 Week5 Status $; format Week1-Week5 dollar6.; run; proc print data=WORK.NUMBERS; run; D. data WORK.NUMBERS; length Name $ 4 Month $ 3 Status $ 7; infile TEXTFILE.TXT dsd ; input Name $ Month $; if Month=FEB then input Week1 Week2 Week3 Week4 Status $; else if Month=MAR then input Week1 Week2 Week3

9、 Week4 Week5 Status $; format Week1-Week5 dollar6.; run; proc print data=WORK.NUMBERS; run; 答案: C 本题知识点:INFILE语句与指示器、 INFILE filespecification options; 其中, filespecification用来定义文件, options 给出选择项 ; filespecification 有以下三种形式: 、fileref( 文件标志 ) 、 filename(文件名 ) 、CARDS指明输入的数据,紧跟着CARDS语句 下列选择项 (options) 可

10、以出现在INFILE语句中 : 、COLUMN=variable 或 COL=variable 定义一个变量, 其值是指针所在的当前列位置。 、END=variable 定义一个变量, 作为文件结束的标志。 、EOF=label 是一个语句标号, 当 INFILE语句读到文件末尾时, 作为隐含的GOTO语句的目标。 、LENGHT=variable 定义一个变量, 其值是当前输入数据行的长度。 、FIRSTOBS=linenumber 要求从指定的行开始读取数据, 而不是从文件的第一个记录开始。 、OBS=n 指定从一个顺序输入文件中读取数据的最后一个行(即第 1第 n 行)。一个观察可能占n

11、 行。 、DLM= 若分隔符不是空格,则使用DLM=指定 、DSD 忽略引号中数值的分隔符;自动将字符数据中的引号去掉;将两个相邻分隔符视为缺失值处理。 、MISSOVER 阻止 INPUT 进入下一行读取,未赋值变量视为缺失值。 、TRUNCOVER 与 MISSOVER相似,但在COLUMN INPUT或 FORMATTED INPUT中使用。 比较 与 的区别: 用于 1 个数据行用多个input 语句读取,停留到下一个INPUT 语句。 用于 1 个数据行含有多个观测值读取时,停留到下一个DATA步。 Q 3 The following SAS program is submitted

12、: data WORK.DATE_INFO; Day=“01“ ; Yr=1960 ; X=mdy(Day,01,Yr) ; run; What is the value of the variable X? A. the numeric value 0 B. the character value “01011960“ C. a missing value due to syntax errors D. the step will not compile because of the character argument in the mdy function. 答案: A 本题知识点:数据

13、类型的自动转换 在 SAS中,日期时间是以1960 年 1 月 1 日 0 时 0 分 0 秒作为起点的。因此,mdy(1,1,1960)=0 。 若把日期时间表示为常数时,要使用相应的格式,带单或双引号,在后面紧跟一个D(日期)、 T(时间)、 DT(日期时间)。 在本题中,日期函数的参数应该是数值,若是字符串,会先尝试字符串是否可以转换为数值,这是自动转 换。 自动转换是指系统产生一个临时的变量来完成赋值或运算。当自动转换发生时,会在LOG 窗口中给出提示。 1)、字符型变量 - 数值型变量 在下面的情况中,VarB 是一个字符型变量,其它是数字型变量。 赋值于一个数字型变量,如:VarA

14、=VarB; 在算术运算中使用,如:VarA=VarB+0; 与一个数字型变量进行比较,如:if VarB=VarA; 在函数中,参数要求数字型变量,如:VarA=sum(VarB,0); 2)、数值型变量 - 字符型变量 在下面的情况中,VarB 是一个数字型变量,其它是字符型变量。 赋值于一个字符型变量,如:VarA=VarB; 在与要求字符的运算符一起使用,如:VarA=|VarB; 在函数中,参数要求字符型变量,如:VarA=trim(VarB); Q 4 The Excel workbook REGIONS.XLS contains the following four worksh

15、eets: EAST WEST NORTH SOUTH The following program is submitted: libname MYXLS regions.xls; Which PROC PRINT step correctly displays the NORTH worksheet? A. proc print data=MYXLS.NORTH;run; B. proc print data=MYXLS.NORTH$;run; C. proc print data=MYXLS.NORTHe;run; D. proc print data=MYXLS.NORTH$n;run;

16、 答案: D 本题知识点:打印Excel 的某个工作表的数据 WHAT IS THAT “ $” CHARACTER? Looking at SAS Explorer it may be surprising that each dataset written to Excel appears twice, once with the expected name an d once with a trailing “ $”. Unlike a typical data source, data in an Excel spreadsheet need not be left and top a

17、ligned. For this Excel has named ranges which allow data to be placed anywhere inside a spreadsheet. By default SAS reads and writes data from named ranges on spreadsheets, but will also read spreadsheet data directly in the absence of a named range. When a new SAS dataset is created in an Excel lib

18、rary, SAS creates both a spreadsheet and a named range. Each is given the same name, wi th thespreadsheet denoted by a trailing “ $”. In the example at right CLASS is the named range created by the Excel engine and CLASS$ is the spreadsheet created by the Excel engine to hold the named range. Within

19、 SAS, the named range is referred to as Wrkbk.CLASS, and the spreadsheet is referenced using the name literal Wrkbk. CLASS$ n. SAS name literals are name tokens written as strings within quotation marks, followed by the letter n. Name literals allow the use of special characters that are not otherwi

20、se allowed in SAS names , like the “ $” used by the Excel libname engine to distinguish worksheets from named ranges. For more information see the Recommended Readings. 摘自 De-Mystifying the SAS LIBNAME Engine in Microsoft Excel: A Practical Guide Q 5 Which statement specifies that records 1 through

21、10 are to be read from the raw data file customer.txt? A. infile customer.txt 1-10; B. input customer.txt stop10; C. infile customer.txt obs=10; D. input customer.txt stop=10; 答案: C 本题知识点:INFILE的选项 FIRSTOBS= 常数,要求从指定的行开始读取数据, 而不是从文件的第一个记录开始。 OBS=常数,指定从一个顺序输入文件中读取数据的最后一个行(即第 1第 n 行)。一个观测可能占n 行。 Q 6 A

22、fter a SAS program is submitted, the following is written to the SAS log: 101 data WORK.JANUARY; 102 set WORK.ALLYEAR(keep=product month num_Sold Cost); 103 if Month=Jan then output WORK.JANUARY; 104 Sales=Cost * Num_Sold; 105 keep=Product Sales; - 22 ERROR 22-322: Syntax error, expecting one of the

23、 following: !, !, What changes should be made to the KEEP statement to correct the errors in the LOG? A. keep=(Product Sales); B. keep Product, Sales; C. keep=Product, Sales; D. keep Product Sales; 答案: D 本题知识点:KEEP语句与 KEEP= 选项 在处理大型数据集时,KEEP= 选项的效率较高。 KEEP语句: KEEP variable(s); 不能用于过程步。 KEEP= 选项: dat

24、a-set-name( KEEP=variable(s) ) 可以用于数据步(如,DATA 语句、 SET语句)、过程步。 其中, variable(s)是具体变量,不能是数组、_N_、_ERROR_ 等。 Q 7 Which of the following choices is an unacceptable ODSdestination for producing output that can be viewed in Microsoft Excel? A. MSOFFICE2K B. EXCELXP C. CSVALL D. WINXP 答案: D 本题知识点:ODS输出 Most

25、of these destinations are designed to create output for viewing on a screen or for printing. The OUTPUT destination creates SAS data sets. The MARKUP destination is a general purpose tool for creating output in formats defined by tagsets. This includes XML (eXtensible Markup Language), EXCELXP, LaTe

26、X, CSV (comma-separated values), and many other formats where data can be thought of as separated by tags. The DO CUMENT destination, on the other hand, allows you to create a reusable output “ document ” that yo u can rerender for any destination. So, if your boss decides he really wants that repor

27、t in PDF, not RTF, you can replay the output document without having to rerun the entire SAS program that created the data. With an output document, you can also rearrange, duplicate, or delete tables to further customize your output. 摘自 The Little SAS Book(Fourth) P152 页 Q 8 The SAS data set named

28、WORK.SALARY contains 10 observations for each department, and is currently ordered by Department. The following SAS program is submitted: data WORK.TOTAL; set WORK.SALARY(keep=Department MonthlyWageRate); by Department; if First.Department=1 then Payroll=0; Payroll+(MonthlyWageRate*12); if Last.Depa

29、rtment=1; run; Which statement is true? A. The by statement in the DATA step causes a syntax error. B. The statement Payroll+(MonthlyWageRate*12); in the data step causes a syntax error. C. The values of the variable Payroll represent the monthly total for each department in the WORK.SALARY data set

30、. D. The values of the variable Payroll represent a monthly total for all values of WAGERATE in the WORK.SALARY data set. 答案: C 本题知识点:类似第1 题 Q 9 data course; input exam; datalines; 50.1 ; run; proc format; value score 1 50 = Fail 51 100 = Pass ; run; proc report data =course nowd; column exam; defin

31、e exam / display format=score.; run; What is the value for exam? A. Fail B. Pass C. 50.1 D. No output 答案: C 本题知识点:PROC FORMAT语句 PROC FORMAT; VALUE name range-1= formatted -text- 1; range-2= formatted -text- 2; range-n= formatted -text- n; 若 name 为字符串设计格式,则必须在开头加$,长度不超过32 字节; name 不能以数字结尾,除了下划线外,不能含其

32、他的任何特殊字符。 在 range 右侧文本可达到32767 字节。 变量值是字符串要加引号。 range 是多个值,要用逗号。 连续的要用 -。 关键字 low 、high 指代变量中最小和最大的非缺失值。 用 ; 语句 ; RUN; data=:数据集 maxdec=:指定输出结果的小数位数,默认为7 位 noprint :禁止结果在OTPUT 窗口输出 alpha:设定可信区间的水平,默认为0.05 MAX 、MIN 、MEAN 、 MEDIAN 、N、NMISS 、 RANGE 、STDDEV 、SUM 若不加统计关键词,默认打印的顺序: 非缺失值个数(N)、均值( MEAN )、标准

33、差(STDDEV )、最小值(MIN )、最大值(MAX )。 语句 若在 PROC MEAN过程中没有其他语句,默认输出所有观测值和所有数值变量的统计量。 BY :分变量单独分析,数据必须先按变量顺序排序,即PROC SORT CLASS :分变量单独分析,不用排序 VAR :指定使用的数值变量 Q 12 The Excel workbook QTR1.XLS contains the following three worksheets: JAN FEB MAR Which statement correctly assigns a library reference to the Exc

34、el workbook? A. libname qtrdata qtr1.xls; B. libname qtr1.xls sheets=3; C. libname jan feb mar qtr1.xls; D. libname mydata qtr1.xls WORK.heets=(jan,feb,mar); 答案: A 本题知识点:LIBNAME语句格式 LIBNAME libref SAS -data-library ; Q 13 The following SAS program is submitted: data WORK.TEST; set WORK.MEASLES(keep=

35、Janpt Febpt Marpt); array Diff3 Difcount1-Difcount3; array Patients3 Janpt Febpt Marpt; run; What new variables are created? A. Difcount1, Difcount2 and Difcount3 B. Diff1, Diff2 and Diff3 C. Janpt, Febpt, and Marpt D. Patients1, Patients2 and Patients3 答案: A 本题知识点:数组 与其他编程语言的数组相比不同在于,SAS 数组的每个元素都对应

36、一个变量名。 数值型数组 数组说明中的初始值可省略,默认为缺失值。 数组说明中变量可省略,变量名默认为数组名+序号。序号从1 开始。 ARRAY test(3) Math Chinese English (0,0,0) ; 数组元素的个数由变量个数决定。 ARRAY test(*) test3-test8; 二维数组,数组元素按行排列。 ARRAR x(2,2) x11 x12 x21 x22; 字符型数组 字符型数组药指定数组元素的最大长度,其他与数值型数组相同。 ARRAY test(2) $ 10 mathor father; 临时数组 若 SAS 数组每个元素不对应变量名,即为临时数组

37、。这与其他编程语言相同。 ARRAY test(3) _TEMPORARY_ (0,0,0); 临时数组只用于中间计算,不保存入数据集。 在数据步中,临时数组在数据步隐含循环中能自动保留上一步得到的值。 Q 14 Which of the following programs correctly invokes the DATA Step Debugger: A. data WORK.TEST debug; set WORK.PILOTS; State=scan(cityState,2, ); if State=NE then description=Central; run; B. data

38、 WORK.TEST debugger; set WORK.PILOTS; State=scan(cityState,2, ); if State=NE then description=Central; run; C. data WORK.TEST / debug; set WORK.PILOTS; State=scan(cityState,2, ); if State=NE then description=Central; run; D. data WORK.TEST / debugger; set WORK.PILOTS; State=scan(cityState,2, ); if S

39、tate=NE then description=Central; run; 答案: C 本题知识点: / debug 语法 DEBUG 过程的调用方法:在DATA步后面增加DEBUG 选项。 Q 15 Which statement is true concerning the SAS automatic variable _ERROR_? A. It cannot be used in an if/then condition. B. It cannot be used in an assignment statement. C. It can be put into a keep sta

40、tement or keep= option. D. It is automatically dropped. 答案: D 本题知识点:自动变量_ERROR_ 在 PDV 过程中,产生很多自动变量,可以在数据步的表达式中使用,在输出数据集中不可见。 在 PDV 过程中, _N_、_ERROR_ 默认为 DROP。 在 KEEP 语句或 KEEP= 选项中,可以使用除了_N_、_ERROR_ 之外的变量。 Q 16 The following SAS program is submitted: data WORK.DATE_INFO; X=04jul2005d; DayOfMonth=day(x

41、); MonthOfYear=month(x); Year=year(x); run; What types of variables are DayOfMonth, MonthOfYear, and Year? A. DayOfMonth, Year, and MonthOfYear are character. B. DayOfMonth, Year, and MonthOfYear are numeric. C. DayOfMonth and Year are numeric. MonthOfYear is character. D. DayOfMonth, Year, and Mont

42、hOfYear are date values. 答案: B 本题知识点:SAS中日期时间及函数 起点: 1960 年 1 月 1日 0时 0 分 0 秒。 若将日期时间标示为数值型常数,需使用相应格式。 格式值带单引号,后跟一个D(日期)、 T(时间)、 DT (日期时间)。 日期函数返回值为数值。 Q 17 Given the following data step: data WORK.GEO; infile datalines; input City $20.; if City=Tulsa then State=OK; Region=Central; if City=Los Angel

43、es then State=CA; Region=Western; datalines; Tulsa Los Angeles Bangor ; run; After data step execution, what will data set WORK.GEO contain? A. City State Region - - - Tulsa OK Western Los Angeles CA Western Bangor Western B. City State Region - - - Tulsa OK Western Los Angeles CA Western Bangor C.

44、City State Region - - - Tulsa OK Central Los Angeles CA Western Bangor Western D. City State Region - - - Tulsa OK Central Los CA Western Bangor 答案: A 本题知识点:IF语句 若执行语句不能在一个语句完成,则使用复合语句DO 和 END IF 条件 THEN 语句 ; 没有 ENDIF ,没有 IF-ELSEIF-ELSE多分支结构 ,语句 1 只能是一个语句。 IF 条件 THEN 语句 1; ; Q 18 Which statement des

45、cribes a characteristic of the SAS automatic variable _ERROR_? A. The _ERROR_ variable maintains a count of the number of data errors in a DATA step. B. The _ERROR_ variable is added to the program data vector and becomes part of the data set being created. C. The _ERROR_ variable can be used in exp

46、ressions in the DATA step. D. The _ERROR_ variable contains the number of the observation that caused the data error. 答案: C 本题知识点:WHERE语句 类似第 15 题。 Q 19 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 follo

47、wing SAS program is submitted: proc print data=WORK.ONE; where Num=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 本题知识点:WHERE语句 WHERE 语句无法找到满足条件的观测。 Q 20 The data set WORK.REALESTATE has the variable LocalFee wit

48、h a format of 9. and a variable CountryFee with a format of 7.; The following SAS program is submitted: data WORK.FEE_STRUCTURE; format LocalFee CountryFee percent7.2; set WORK.REALESTAT; LocalFee=LocalFee/100; CountryFee=CountryFee/100; run; What are the formats of the variables LOCALFEE and COUNTRYFEE in the output dataset? A. LocalFee has format of 9. and CountryFee has a f

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1