1、SASBase认证考试70题0110SAS分多个认证种类:base,advanced,clinic等,但大多需要先通过base认证。但凡这类商业组织提供的考证,基本都是题库型,所以想考过难度并不大。对于只想拿SAS认证的人,如果熟练掌握网上流传甚广的sas真题70题,通过base认证基本就没问题。 Q 11. The following SAS program is submitted:data WORK.TOTAL; set WORK.SALARY; by Department Gender; if First. then Payroll=0; Payroll+Wagerate; if La
2、st.;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. GenderB. Department C. Gender DepartmentD. Department Gender答案:A本题知识点:自动变量在SAS读取数据时,在PDV过程中会产生很多自动变量,在输出的数据集中是不可见的。 FIRST.VARIABLE
3、:同一个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,29,11,23,Current Tina,FEB,15,
4、18,12,13,Final Tina,MAR,29,14,19,27,20,CurrentThe 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 27 $20 Which SAS program correctly produces
5、the desired output?A. data WORK.NUMBERS; length Name 4Month 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 $; format Week1-Week5 dollar6.; run; proc print data=WORK.
6、NUMBERS; run; B. data WORK.NUMBERS; length Name 4Month 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 Week5 Status $; format Week1-Week5 dollar6.; run; proc print data
7、=WORK.NUMBERS; run; C. data WORK.NUMBERS; length Name 4Month 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 Week4 Week5 Status $; format Week1-Week5 dollar6.; run; proc print data=WO
8、RK.NUMBERS; run; D. data WORK.NUMBERS; length Name 4Month 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 $; format Week1-Week5 dollar6.; run; proc print data=WORK.N
9、UMBERS; run; 答案:C本题知识点:INFILE语句与指示器、INFILE filespecification options;其中,filespecification用来定义文件, options给出选择项; filespecification有以下三种形式:、fileref(文件标志)、filename(文件名)、CARDS指明输入的数据,紧跟着CARDS语句 下列选择项(options)可以出现在INFILE语句中:、COLUMN=variable或COL=variable 定义一个变量, 其值是指针所在的当前列位置。、END=variable 定义一个变量, 作为文件结束的标
10、志。、EOF=label是一个语句标号, 当INFILE语句读到文件末尾时, 作为隐含的GOTO语句的目标。、LENGHT=variable 定义一个变量, 其值是当前输入数据行的长度。、FIRSTOBS=linenumber 要求从指定的行开始读取数据, 而不是从文件的第一个记录开始。、OBS=n 指定从一个顺序输入文件中读取数据的最后一个行(即第1第n行)。一个观察可能占n行。、DLM= 若分隔符不是空格,则使用DLM=指定、DSD 忽略引号中数值的分隔符;自动将字符数据中的引号去掉;将两个相邻分隔符视为缺失值处理。、MISSOVER 阻止INPUT进入下一行读取,未赋值变量视为缺失值。、
11、TRUNCOVER与MISSOVER相似,但在COLUMN INPUT或FORMATTED INPUT中使用。比较 与 的区别: 用于1个数据行用多个input语句读取,停留到下一个INPUT语句。 用于1个数据行含有多个观测值读取时,停留到下一个DATA步。 Q 3The following SAS program is submitted: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. t
12、he character value 01011960C. a missing value due to syntax errorsD. the step will not compile because of the character argument in the mdy function.答案:A本题知识点:数据类型的自动转换在SAS中,日期时间是以1960年1月1日0时0分0秒作为起点的。因此,mdy(1,1,1960)=0。若把日期时间表示为常数时,要使用相应的格式,带单或双引号,在后面紧跟一个D(日期)、T(时间)、DT(日期时间)。在本题中,日期函数的参数应该是数值,若是字符串
13、,会先尝试字符串是否可以转换为数值,这是自动转换。自动转换是指系统产生一个临时的变量来完成赋值或运算。当自动转换发生时,会在LOG窗口中给出提示。1)、字符型变量 - 数值型变量在下面的情况中,VarB是一个字符型变量,其它是数字型变量。 赋值于一个数字型变量,如:VarA=VarB; 在算术运算中使用,如:VarA=VarB+0; 与一个数字型变量进行比较,如:if VarB=VarA; 在函数中,参数要求数字型变量,如:VarA=sum(VarB,0);2)、数值型变量 - 字符型变量 在下面的情况中,VarB是一个数字型变量,其它是字符型变量。 赋值于一个字符型变量,如:VarA=Var
14、B; 在与要求字符的运算符一起使用,如:VarA=|VarB; 在函数中,参数要求字符型变量,如:VarA=trim(VarB);Q 4The Excel workbook REGIONS.XLS contains the following four worksheets: 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
15、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; 答案: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 exp
16、ected name and once with a trailing “”.Unlikeatypicaldatasource,datainanExcelspreadsheetneednotbeleftandtopaligned.ForthisExcelhasnamedrangeswhichallowdatatobeplacedanywhereinsideaspreadsheet.BydefaultSASreadsandwritesdatafromnamedrangesonspreadsheets,butwillalsoreadspreadsheetdatadirectlyintheabsen
17、ceofanamedrange.WhenanewSASdatasetiscreatedinanExcellibrary,SAScreatesbothaspreadsheetandanamedrange.Eachisgiventhesamename,withthespreadsheetdenotedbyatrailing“ ”. 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
18、to hold the named range. Within 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 ch
19、aracters that are not otherwise 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.Q 5Which statement specifies that records 1 through 10 are to be read from the raw data file customer.tx
20、t?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 6After a SAS program is submitted, the following is written to the
21、 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 following: !, !, &, *, *, +, -, , =, , =, , =, AND, EQ, GE, GT,
22、 IN, LE, LT, MAX, MIN, NE, NG, NL, NOTIN, OR, =, |, |, =. 106 run;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语句:KE
23、EP variable(s); 不能用于过程步。 KEEP=选项:data-set-name( KEEP=variable(s) ) 可以用于数据步(如,DATA语句、SET语句)、过程步。其中,variable(s)是具体变量,不能是数组、_N_、_ERROR_等。Q 7Which of the following choices is an unacceptable ODSdestination for producing output that can be viewed in Microsoft Excel? A. MSOFFICE2KB. EXCELXP C. CSVALLD. WI
24、NXP答案:D本题知识点:ODS输出Most 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 purposetool for creating output in formats defined by tagsets. This includes XML (eXtensible MarkupLang
25、uage), EXCELXP, LaTeX, CSV (comma-separated values), and many other formats where datacan be thought of as separated by tags. The DO CUMENT destination, on the other hand, allowsyou to create a reusable output “document” that yo u can rerender for any destination. So, if yourboss decides he really w
26、ants that report in PDF, not RTF, you can replay the output documentwithout 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 8The SAS data se
27、t named 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 La
28、st.Department=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.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 9data course;input exam;datalines;50.1;run;proc format;value score 1 50 = Fail 51 100 = Pass;run;proc report
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1