You are on page 1of 29

Quiz Results for Certification Practice Exam

https://support.sas.com/edu/OLTRN/61030/m0001/base9quizx.htm

Quiz Score: 0%

You answered 0 out of 50 questions correctly. To see any answer, scroll down or click a question in the grid below. When you select links on this page, the information appears in the original browser window. Question # Correct / Incorrect 11 12 13 14 15 16 17 18 19 20 1 2 3 4 5 6 7 8 9 10

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

1.

A raw data file is listed below.


1---+----10---+----20---+--01/05/1989 Frank 11 12/25/1987 June 13 01/05/1991 Sally 9

The following SAS program is submitted using this file as input: data work.family; infile 'file-specification'; input @1 date_of_birth mmddyy10. @15 first_name $5. @25 age 3; run; proc print data=work.family noobs; run; The following output is generated for the Work.Family data set:
Date_of_birth First_name Age 10597 Frank 10220 June . .

11327 Sally

Which of the following statements is true regarding the Work.Family output?

1 of 29

10/22/2013 1:50 PM

Quiz Results for Certification Practice Exam

https://support.sas.com/edu/OLTRN/61030/m0001/base9quizx.htm

a. b. c. d.

The output has the expected data values. The output does not have the expected data values due to an invalid data set name. The output does not have the expected data values due to an invalid informat for Age only. The output does not have the expected data values due to invalid informats for both Age and Date_of_birth.

Correct answer: c Your answer: The output for Work.Family does not have the expected data values. The values for the variable Age are missing because the program contains an invalid informat for Age. The informat for reading standard numeric data is w.d, so the correct informat for Age is 3.. The informat for Date_of_birth, mmddyy10., is correct.

2.

The following SAS program is submitted: data employees; infile 'file-specification'; input @1 name $10. @15 date date9 @25 department $; run; How many numeric variables are created? a. b. c. d. 0 1 2 3

Correct answer: c Your answer: Name and Department are created as character variables because they both use the $w. informat. If the second line of the INPUT statement was @15 date date9., then the program would create one numeric variable named Date. However, the period is missing from the informat date9.. Therefore, SAS interprets the line as list input rather than formatted input, and creates two numeric variables: Date and Date9.

3.

What is the function of the FILENAME statement in SAS? a. b. c. d. It associates a file reference with an external file. It associates a library reference with an external file. It associates a file reference with a relational database. It associates a library reference with a relational database.

Correct answer: a Your answer: The FILENAME statement associates a file reference with an external file. The LIBNAME statement associates a library reference with a SAS data library. The LIBNAME statement can also associate a library

2 of 29

10/22/2013 1:50 PM

Quiz Results for Certification Practice Exam

https://support.sas.com/edu/OLTRN/61030/m0001/base9quizx.htm

reference with a relational database if you have the appropriate SAS/ACCESS products licensed for the relational database that you need to access. Referencing Files and Setting Options

4.

A raw data file is listed below.


1---+----10---+----20---+--Jose,47,210 Sue,,108

The following SAS program is submitted using this file as input: data employeestats; <insert INFILE statement here>; input name $ age weight; run; The following output is desired:
name age weight Jose Sue 47 . 210 108

Which of the following INFILE statements completes the program and accesses the data correctly? a. b. infile 'file-specification' dsd; c. infile 'file-specification' missover; d. infile 'file-specification' dlm=','; infile 'file-specification' pad;

Correct answer: b Your answer: The correct INFILE statement uses the DSD option to read the data with commas as delimiters and uses two consecutive commas to indicate a missing value. The PAD option specifies that SAS pad variable length records with blanks. The MISSOVER option prevents SAS from reading past the end of the line when reading free-formatted data. The DLM= option specifies the comma as the delimiter, but by default consecutive delimiters are treated as one delimiter rather than as an indication of a missing value.

5.

A raw data file is listed below.


1---+----10---+----20---+--RANCH,1250,10MAR2004 SPLIT,1190,10/20/2004 CONDO,1400,17JUN2004 TWOSTORY,1810,12/31/2004 RANCH,1500,20JAN2004

3 of 29

10/22/2013 1:50 PM

Quiz Results for Certification Practice Exam

https://support.sas.com/edu/OLTRN/61030/m0001/base9quizx.htm

SPLIT,1615,08/19/2004

The following SAS program is submitted using this file as input: data work.condo_ranch; infile 'file-specification' dsd; input style $ @; if style = 'CONDO' or style = 'RANCH' then input sqfeet saledate : date9.; else input sqfeet saledate : mmddyy10.; run; How many observations does the Work.Condo_ranch data set contain? a. b. c. d. 0 3 5 6

Correct answer: d Your answer: There are 6 observations in the Work.Condo_ranch data set. The trailing @ in the first INPUT statement holds the record in the input buffer and allows the next INPUT statement that is executed to continue reading from the same record. The program uses IF-THEN/ELSE conditional logic to execute either the second or third INPUT statement conditionally based on the value of Style. Because of the trailing @ in the first INPUT statement, the second or third INPUT statement reads from the same record as the first INPUT statement. Therefore, each line in the raw data file is read once, which creates a total of 6 observations in the output data set.

6.

A raw data file is listed below.


1---+----10---+----20---+----30---+----40---+----50 TWOSTORY 1040 2 1SANDERS ROAD $55,850 CONDO 2150 4 2.5JEANS AVENUE $127,150

The following program is submitted using this file as input: data work.houses; infile 'file-specification'; <insert INPUT statement here> run; Which one of the following INPUT statements reads the raw data file correctly? a. input @1 +1 +1 @20 style $8. sqfeet 4. bedrooms 1. baths 3. street 16. @40 price dollar8;

4 of 29

10/22/2013 1:50 PM

Quiz Results for Certification Practice Exam

https://support.sas.com/edu/OLTRN/61030/m0001/base9quizx.htm

b. input @1 +1 +1 @20 style $8 sqfeet 4. bedrooms 1. baths 3. street $16 @40 price dollar8.;

c. input @1 +1 +1 @20 style $8. sqfeet 4. bedrooms 1. baths 3. street $16. @40 price dollar8.;

d. input @1 +1 +1 @20 style $8. sqfeet 4. bedrooms 1. baths 3 street 16. @40 price dollar8.;

Correct answer: c Your answer: To read formatted input, an INPUT statement requires valid informats. A valid informat always contains a period. The correct INPUT statement creates 2 character variables (Style and Street) and 4 numeric variables (Sqfeet, Bedrooms, Baths, and Price).

7.

The following SAS program is submitted: data both; set M F(in = INF); if INF then gen = 'F'; else gen = 'M'; by name; run; The SAS data sets Work.M and Work.F are each sorted by the variable Name. The data set Work.M contains 10 observations, and the data set Work.F contains 9 observations. How many observations does the Work.Both data set contain? a. b. c. d. 0 9 10 19

Correct answer: d Your answer: The Work.Both data set contains 19 observations. The valid SET statement contains two input data sets, which causes the input data sets to be concatenated. The IN= data set option creates an indicator variable that is used to conditionally assign a value to the variable Gen. The variable Inf indicates whether Work.F

5 of 29

10/22/2013 1:50 PM

Quiz Results for Certification Practice Exam

https://support.sas.com/edu/OLTRN/61030/m0001/base9quizx.htm

contributed data to the current observation. When Work.F contributes to the current observation, the IF statement is true and the value of Gen is set to F. Otherwise, the IF statement is false and the value of Gen is set to M.

8.

The following SAS program is submitted: data test(drop=age); set sashelp.class(keep=name age gender height weight); drop=gender; newage=age+1; run; Sashelp.Class contains 5 variables. What is the result? a. b. c. d. No variables are written to the data set Work.Test. 4 variables are written to the data set Work.Test. 5 variables are written to the data set Work.Test. 6 variables are written to the data set Work.Test.

Correct answer: d Your answer: The Work.Test data set contains 6 variables: Name, Gender, Height, Weight, Drop, and Newage. The KEEP= option in the SET statement reads 5 variables from the input data set. The variable Age is read from the input data set, but it is dropped from the output data set by the DROP= data set option. There are also two new variables created in the DATA step.

9.

The following SAS program is submitted at the start of a new SAS session: libname sasdata 'SAS-data-library'; data sasdata.sales; set sasdata.salesdata; profit=expenses-revenues; run; proc print data=sales; run; The SAS data set Sasdata.Salesdata has 10 observations. Which one of the following answers explains why a report fails to generate? a. b. c. d. The DATA step fails to execute. The SAS data set Sales does not exist. The SAS data set Sales has no observations. The PRINT procedure statement syntax is incorrect.

Correct answer: b Your answer: The LIBNAME statement creates a permanent data library named Sasdata. The DATA statement indicates that the new data set Sales will be stored in the permanent library Sasdata. The PRINT procedure references a temporary SAS data set, Sales, which is stored in the Work library. At the beginning of the

6 of 29

10/22/2013 1:50 PM

Quiz Results for Certification Practice Exam

https://support.sas.com/edu/OLTRN/61030/m0001/base9quizx.htm

SAS session, Work.Sales does not exist.

10. The SAS data set Sasdata.Two is listed below. Sasdata.Two


x y 5 2 5 4 3 6

The following SAS program is submitted: data sasuser.one one; set sasdata.two; output one; run; What is the result? a. b. c. d. The data set Sasuser.One has 0 observations and the data set One has 0 observations. The data set Sasuser.One has 0 observations and the data set One has 3 observations. The data set Sasuser.One has 3 observations and the data set One has 0 observations. The data set Sasuser.One has 3 observations and the data set One has 3 observations.

Correct answer: b Your answer: There are 2 output data sets listed in the DATA statement: the permanent data set Sasuser.One and the temporary data set One. The SET statement reads 3 observations from Work.Two. The OUTPUT statement is used to explicitly output the 3 observations to the Work.One data set. When the OUTPUT statement is used, it turns off automatic output in the DATA step, so any data set that is listed in the DATA statement but not in the OUTPUT statement will not have any observations written to it. Because there is no explicit OUTPUT statement for Sasuser.One, the data step creates Sasuser.One but it has 0 observations.

11. The following SAS program is submitted: data work.new; y=10; z=05; x=12; date=mdy(x,y,z); run; What is the value of the Date variable? a. b. c. d. a character string with the value 12/10/05 a character string with the value 10Dec2005 a numeric value of 16780, which represents the SAS date value for December 10, 2005 a numeric value of 121005, which represents the SAS date value for December 10, 2005

7 of 29

10/22/2013 1:50 PM

Quiz Results for Certification Practice Exam

https://support.sas.com/edu/OLTRN/61030/m0001/base9quizx.htm

Correct answer: c Your answer: The MDY function creates a numeric value that represents a SAS date value. The arguments in the MDY function must be numeric, and they must represent the values for the month, day, and year (in that order). SAS date values are calculated as the number of days from January 1, 1960, to the given date. Therefore, the numeric value 16780 represents the SAS date value for December 10, 2005.

12. The following SAS program is submitted: data work.report; set work.sales_info; if qtr(sales_date) ge 3; run; The SAS data set Work.Sales_info has one observation for each month in the year 2005, and the variable Sales_Date contains a SAS date value for each of the 12 months. How many of the original 12 observations in Work.Sales_info are written to the Work.Report data set? a. b. c. d. 2 3 6 9

Correct answer: c Your answer: The QTR function extracts a value from 1 to 4 from a SAS date value. This value indicates the quarter of the year in which the date falls. The quarters are based on a calendar year starting with January. The subsetting IF statement continues to process only when the observation has a Sales_date value that falls in the last 2 quarters of the year. Because the input data set contains one observation for each month in the year 2005, there are 6 observations written to Work.Report.

13. The following SAS program is submitted: data _null_; set old(keep=sales1 sales2); file 'file-specification'; put sales1 sales2; run; What is the result? a. b. c. d. A raw data file is created with no delimiter separating the fields. A raw data file is created with a space delimiter separating the fields. A raw data file is created with a comma delimiter separating the fields. No raw data file is created. The DATA step fails execution because no delimiter is specified.

Correct answer: b Your answer:

8 of 29

10/22/2013 1:50 PM

Quiz Results for Certification Practice Exam

https://support.sas.com/edu/OLTRN/61030/m0001/base9quizx.htm

The FILE statement specifies the output file for the DATA step. The PUT statement describes the lines to write to the raw data file. In this case, the PUT statement is used with list input, so the fields in the output are delimited by a blank space.

14. The following SAS program is submitted: data _null_; set old <insert option here> = last; put sales1 sales2; if last then put 'This is the end of the data set'; run; Which of the following options creates the variable Last? a. b. c. d. END EOF PTOBS TOTOBS

Correct answer: a Your answer: The END= option creates and names a temporary variable whose value is 1 when the DATA step is processing the last observation (otherwise the value is 0). PTOBS, EOF, and TOTOBS are not valid SAS options.

15. The SAS data set One is listed below. One


X Y Z 1 A 27 1 A 33 1 B 45 2 A 52 2 B 69 3 B 70 4 A 82 4 C 91

The following SAS program is submitted: data two; set one; by x; if first.x; run;

9 of 29

10/22/2013 1:50 PM

Quiz Results for Certification Practice Exam

https://support.sas.com/edu/OLTRN/61030/m0001/base9quizx.htm

proc print data=two noobs; run; Which of the following reports is the result? a.

X YZ
1 A 27 2 A 52 3 B 70 4 A 82

b.

X YZ
1 A 27 1 B 45 2 A 52 2 B 69 3 B 70 4 A 82 4 C 91

c.

X YZ
1 B 45 2 B 69 3 B 70 4 C 91

d.

No report is produced. The PRINT procedure fails because the data set Two is not created in the DATA step.

Correct answer: a Your answer: First.X is a temporary variable that is automatically created to identify the beginning of each BY group. First.X is not included in the output data set Two. The subsetting IF statement in this program is true for the first observation of each BY group. Therefore, the data set Two contains one observation for the first instance of each value of X in One.

16. The following SAS program is submitted: libname sasdata 'SAS-data-library'; libname labdata 'SAS-data-library'; data labdata.boston labdata.dallas(drop=city dest equipment); set sasdata.cities(keep=orig dest city price equipment); if dest='BOS' then output labdata.boston; else if dest='DFW' then output labdata.dallas; run; Which variables are output to both data sets? a. Price and Orig only

10 of 29

10/22/2013 1:50 PM

Quiz Results for Certification Practice Exam

https://support.sas.com/edu/OLTRN/61030/m0001/base9quizx.htm

b. c. d.

City and Equipment only City, Price, and Equipment only City, Price, Orig, and Equipment only

Correct answer: a Your answer: The DROP= data set option specifies which variables are dropped when the Labdata.Dallas data set is created. If neither the DROP= data set option nor the KEEP= data set option is used, then all of the variables that are read from the input data set are included in the output data set. The KEEP= data set option in the SET statement specifies which variables to read from the input data set. Therefore, the variables that both output data sets contain are the variables that are listed in the KEEP= option in the SET statement and are not listed in the DROP= data set option in the DATA statement.

17. The following SAS program is submitted: proc contents data=sasuser.airplanes; run; What is produced as output? a. b. c. d. the code that created the data set Sasuser.Airplanes the data portion only of the data set Sasuser.Airplanes the descriptor portion only of the data set Sasuser.Airplanes the data and descriptor portions of the data set Sasuser.Airplanes

Correct answer: c Your answer: The CONTENTS procedure cannot produce the code that created the data set Sasuser.Airplanes. PROC CONTENTS displays only the descriptor portion of the data set. To see a listing of the data portion of the data set, you can use the PRINT procedure or the REPORT procedure.

18. Which SAS procedure displays a listing of the observations in the data portion of a SAS data set? a. b. c. d. FSLIST REPORT TABULATE CONTENTS

Correct answer: b Your answer: The REPORT procedure displays a listing of the observations in the data portion of the SAS data set. The FSLIST procedure displays the contents of an external file. The TABULATE procedure displays a tabular report of the observations in the data portion of the SAS data set. The CONTENTS procedure displays the descriptor portion of the SAS data set.

11 of 29

10/22/2013 1:50 PM

Quiz Results for Certification Practice Exam

https://support.sas.com/edu/OLTRN/61030/m0001/base9quizx.htm

19. The observations in the SAS data set Work.Test are ordered by the values of the variable Salary. The following SAS program is submitted: proc sort data=work.test; <insert statement here> run; Which of the following statements completes the program and sorts the Work.Test data set by Name in descending order? a. by desc name; b. by name desc; c. by descending name; d. by name descending;

Correct answer: c Your answer: The SORT procedure orders SAS data set observations by the values of one or more character or numeric variables that are listed in the BY statement. The SORT procedure arranges the data in ascending order by default. To sort in descending order, the keyword DESCENDING must be included in the BY statement before the sort variable. The keyword DESCENDING cannot be abbreviated in the BY statement.

20. The following SAS program is submitted: proc sort data=payroll; by EmployeeIDNumber; run; How are the observations sorted? a. b. c. d. Payroll is re-created in sorted order by EmployeeIDNumber. Payroll is stored in original order, and a new data set Payroll is created in sorted order by EmployeeIDNumber. Payroll is stored in original order, and a new data set Payrollsorted is created in sorted order by EmployeeIDNumber. Payroll is re-created in sorted order by EmployeeIDNumber, and a new data set Payroll is created in sorted order by EmployeeIDNumber.

Correct answer: a Your answer: The SORT procedure orders SAS data set observations by the values of one or more character or numeric variables that are listed in the BY statement. The SORT procedure re-creates and replaces the original data with the sorted version of the data if the OUT= option is not used. If the OUT= data set is used, a new data set is created to hold the sorted data, and the original data remains unchanged.

12 of 29

10/22/2013 1:50 PM

Quiz Results for Certification Practice Exam

https://support.sas.com/edu/OLTRN/61030/m0001/base9quizx.htm

21. Which one of the following SAS programs creates a variable named City with a value of Chicago? a. data work.airports; AirportCode='ord'; if AirportCode='ORD' City='Chicago'; run; b. data work.airports; AirportCode='ORD'; if AirportCode='ORD' City='Chicago'; run; c. data work.airports; AirportCode='ORD'; if AirportCode='ORD' then City='Chicago'; run; d. data work.airports; AirportCode='ORD'; if AirportCode='ORD'; then City='Chicago'; run;

Correct answer: c Your answer: This DATA step uses an IF-THEN statement to conditionally assign the value Chicago to the variable City. The correct syntax for an IF-THEN statement is IF expression THEN statement.

22. The SAS data set Employees is listed below. Employees


Name Salary Patel 60000

Payne 50000 Ellis Liu 55000 45000

The following SAS program is submitted: proc print data=employees; where name ? 'e'; run; What is the result? a. b. No observations are written to the report. The observation for Ellis only is written to the report.

13 of 29

10/22/2013 1:50 PM

Quiz Results for Certification Practice Exam

https://support.sas.com/edu/OLTRN/61030/m0001/base9quizx.htm

c. d.

The observations for Patel and Payne only are written to the report. The observations for Patel , Payne, and Ellis only are written to the report.

Correct answer: c Your answer: Two observations are written to the report: one for Patel, and one for Payne. The WHERE statement uses ?, which is a mnemonic equivalent for the CONTAINS operator. The CONTAINS operator searched for a specific set of characters within the values of a character variable. The position of the string does not matter, but the case does. Because Ellis contains an uppercase E, it is not included in the report.

23. The following SAS program is submitted: data result; lname="o'reiley"; <insert statement here>; run; Which statement completes the program and creates the variable X with a value of O'Reiley? a. x=propcase(lname); b. x=propcase(lname,"'"); c. x=upcase(lname); d. x=upcase(lname,"'");

Correct answer: b Your answer: The PROPCASE function converts all words in an argument to proper case. The PROPCASE function uses a default list of delimiters if none are specified. The delimiter required to correctly convert the value o'reiley to proper case is a single quotation mark. Because the single quotation mark is not one of the default delimiters, it must be listed as the second argument in the function. The UPCASE function converts all letters in the argument to uppercase. There is only one argument for the UPCASE function.

24. The following SAS program is submitted: data work.count; if OriginalAmount= . then OriginalAmount=100; AdditionalItems=100; OriginalAmount= .; TotalCount=(OriginalAmount+AdditionalItems)+0; run; What is the value of the Totalcount variable in the output data set? a. 0

14 of 29

10/22/2013 1:50 PM

Quiz Results for Certification Practice Exam

https://support.sas.com/edu/OLTRN/61030/m0001/base9quizx.htm

b. c. d.

100 200 . (missing numeric value)

Correct answer: d Your answer: Arithmetic operators do not ignore missing values. The result of adding a missing value to an expression with an arithmetic operator is a missing value. In this program, the value of OriginalAmount is missing at the beginning of the DATA step. The IF-THEN logic changes the value of OriginalAmount to >100. Then, the assignment statement for OriginalAmount changes the value to missing. Therefore, OriginalAmount has a missing value when it is used in the expression for the TotalCount assignment statement.

25. Which SAS program renames two variables? a. set work.dept1 work.dept2(rename=(jcode=jobcode) (sal=salary)); set work.dept1 work.dept2(rename=(jcode=jobcode sal=salary)); set work.dept1 work.dept2 rename=(jcode=jobcode sal=salary); set work.dept1 work.dept rename=jcode=jobcode sal=salary;

b.

c.

d.

Correct answer: b Your answer: In the RENAME= data set option, you list the old variable name, followed by an equal sign and the new variable name. You enclose the variable names in one set of parentheses, and you enclose the entire RENAME= option in a second set of parentheses.

26. The variable Name in the data set Employee has a format of $CHAR9. The variable Name in the data set Sales has a format of $CHAR15. The following SAS program is submitted: data merged; merge employee sales; by name; format name $CHAR12.; run; What is the format for the variable Name in the data set Merged? a. b. c. $CHAR. $CHAR9. $CHAR12.

15 of 29

10/22/2013 1:50 PM

Quiz Results for Certification Practice Exam

https://support.sas.com/edu/OLTRN/61030/m0001/base9quizx.htm

d.

$CHAR15.

Correct answer: c Your answer: The FORMAT statement specifies $CHAR12. as the format for the variable Name in the data set Merged. By default, the FORMAT attribute is determined by the data set that is listed first in the MERGE statement. If you use a FORMAT statement in the DATA step, then the FORMAT statement overrides the FORMAT attribute from the first data set that is listed in the MERGE statement.

27. What is true of the sum statement in a SAS DATA step program? a. b. c. d. It is valid only in conjunction with a SUM function. It is not valid with the SET, MERGE, and UPDATE statements. It adds the value of an expression to an accumulator variable and ignores missing values. It does not retain the accumulator variable value from one iteration of the SAS DATA step to the next.

Correct answer: c Your answer: The sum statement in the DATA step is used to create an accumulator variable. It adds the value of the expression to the accumulator variable and ignores missing values. The value of the accumulator variable is retained from one iteration of the SAS DATA step to the next. The sum statement is valid in any DATA step.

28. What is the correct form of the sum statement in a DATA step? a. sum var1 var2; b. var1 + var2; c. total=var1 + var2; d. total=sum(var1,var2);

Correct answer: b Your answer: The sum statement specifies the name of an accumulator variable and adds the result of the expression to that variable. The value is initially set to 0 and is retained. The SUM statement in the PRINT procedure is different from the sum statment in the DATA step. There is also a SUM function that can be used in the DATA step.

16 of 29

10/22/2013 1:50 PM

Quiz Results for Certification Practice Exam

https://support.sas.com/edu/OLTRN/61030/m0001/base9quizx.htm

29. The following SAS program is submitted: data one; address1='214 London Court'; run;

data output; set one; address1=<insert code here>; run; Which of the following completes the program and changes the word Court to Drive in the value of the variable Address1? a. tranwrd(address1,'Court','Drive') b. trantab(address1,'Court','Drive') c. translate(address1,'Court','Drive') d. transform(address1,'Court','Drive')

Correct answer: a Your answer: The TRANWRD function replaces or removes all occurrences of a word in a character string. The TRANTAB function transcodes a data string by using a translation table. The TRANSLATE function replaces a specific character expression. TRANSFORM is not a valid SAS function.

30. The following SAS program is submitted: data work.test; title="Hitchhiker's Guide to the SAS Language"; word=substr(title,13,5); run; What is the value of the variable Word in the output data set? a. b. c. d. Guid ide t s Guid Guide to the SAS Language

Correct answer: a Your answer: The SUBSTR function in this program returns a 5-character substring of the value of Title, beginning at the 13th character.

17 of 29

10/22/2013 1:50 PM

Quiz Results for Certification Practice Exam

https://support.sas.com/edu/OLTRN/61030/m0001/base9quizx.htm

31. The following SAS program is submitted: data work.products; Product_Number=5461; Item='1001'; Item_Reference=item||'/'||product_Number; run; What is the result? a. b. c. d. The variable Item_reference is created with a missing value. The variable Item_reference is created with the value 1001/5461. The variable Item_reference is created with the value 1001/ 5461. The variable Item_reference is not created. The program fails to execute because of errors.

Correct answer: c Your answer: The Item_Reference variable is created as a character variable with the value 1001/ 5461, even though a numeric variable was concatenated with the value of a character variable. SAS performs automatic numeric-to-character conversion for the purpose of concatenation. When Item_Reference is created, the automatic conversion from numeric to character uses the BEST12. format for conversion, and the leading blanks are included in the converted value.

32. The following SAS program is submitted: data work.month; date=put('13mar2000'd,ddmmyy10.); run; What are the type and length of the variable Date in the output data set? a. b. c. d. The type is numeric and the length is 8 bytes. The type is numeric and the length is 10 bytes. The type is character and the length is 8 bytes. The type is character and the length is 10 bytes.

Correct answer: d Your answer: The PUT function converts numeric variables to character variables. You can use a format as the second argument to specify how to write the value. The length of a character variable is determined by the width that is specified in the format name.

33. A SAS program is submitted and the following is written to the SAS log: SAS Log 178 179 data days; do i='SUN' 'MON' 'TUES'; ----- -----388 200

18 of 29

10/22/2013 1:50 PM

Quiz Results for Certification Practice Exam

https://support.sas.com/edu/OLTRN/61030/m0001/base9quizx.htm

ERROR 388-185: Expecting an arithmetic operator. ERROR 300-322: The symbol is not recognized and will be ignored. 180 181 182 day=i!!'DAY'; end; run;

What caused the error? a. b. c. d. The list of values should be in parentheses. The values should be separated by commas. The values should not be in quotation marks. Character values are not allowed on a DO loop statement.

Correct answer: b Your answer: Character values are allowed in a DO loop statement. If character values are used in the DO loop statement, the values should be separated by commas and enclosed in quotation marks.

34. The following SAS program is submitted: data work.clients; calls=6; do while(calls le 6); calls+1; end; calls+1; run; What is the result? a. b. c. d. The variable Calls has a value of 6 in the output data set. The variable Calls has a value of 7 in the output data set. The variable Calls has a value of 8 in the output data set. The variable Calls has no value. The program fails to execute.

Correct answer: c Your answer: The DO WHILE loop checks the validity of the expression at the top of the loop and executes as long as the expression is true. When the expression is false, the DO loop does not execute. In this program, the value of Calls is set to 6 in the assignment statement at the beginning of the DATA step. Therefore, the expression in the DO/WHILE loop is true and the loop executes once. The loop increases the value of Calls to 7, so the loop expression fails and the DATA step continues with the sum statement. At the end of the DATA step, the value of Calls is 8.

19 of 29

10/22/2013 1:50 PM

Quiz Results for Certification Practice Exam

https://support.sas.com/edu/OLTRN/61030/m0001/base9quizx.htm

35. The following SAS program is submitted: data stats; set revenue; array weekly{5} mon tue wed thu fri; <insert DO statement here> total=weekly{i}*.25; output; end; run; Which one of the following DO statements completes the program and processes the elements of the weekly array? a. b. c. do weekly=1 to 5; d. do weekly{i}=1 to 5; do i=1-5; do i=1 to 5;

Correct answer: b Your answer: A simple DO loop can be used to process the elements in the array. When you define a DO loop that processes elements in an array, the index variable name should also be the name that is used for the subscript of the array reference.

36. The following program is submitted: data work.test; array diff_sales{3}; run; Which of the variables are written to the Work.Test data set? a. b. c. d. Diff_sales only Diff_sales3 only Diff_sales, Diff_sales1, Diff_sales2 Diff_sales1, Diff_sales2, Diff_sales3

Correct answer: d Your answer: The ARRAY statement creates an array named diff_sales. The diff_sales array has three elements. Because there are no variables referenced in a variable list in this array definition, this ARRAY statement creates three numeric variables named Diff_sales1, Diff_sales2, and Diff_sales3.

20 of 29

10/22/2013 1:50 PM

Quiz Results for Certification Practice Exam

https://support.sas.com/edu/OLTRN/61030/m0001/base9quizx.htm

37. The following SAS program is submitted: proc report data=work.houses nowd; column style price; where price<100000; <insert DEFINE statement(s) here> title; run; The following list report is generated:
Style of homes CONDO Asking price $80,050 $79,350 $55,850 $69,250

TWOSTORY

Which of the following DEFINE statements completes the program and produces the desired output? a. b. define style/display width=9.; define price/sum format=dollar9. width=10; c. define style/group width=9; define price/sum format=dollar9. width=10; d. define style/order width=9; define price/sum format=dollar9. width=10; define price/sum format=dollar9. width=10;

Correct answer: d Your answer: The detail report shown uses the variables Style and Price. The Style variable is specified as an order variable by the ORDER usage option in the DEFINE statement. The DISPLAY usage option would print a detail report listing all of the values of Style. The GROUP usage option would suppress the repetitious printing of Style, but it would collapse all rows with the same Style value into one row.

38. The following SAS program is submitted: proc sort data=houses; by style; run; proc print data=houses; <insert SAS statement(s) here> run; The following list report is generated:

21 of 29

10/22/2013 1:50 PM

Quiz Results for Certification Practice Exam

https://support.sas.com/edu/OLTRN/61030/m0001/base9quizx.htm

style CONDO

bedrooms baths 2 3 4 2 4 2 2 4 1.5 2.5

price $80,050 $79,350

2.5 $127,150 2.0 $110,700 3.0 $107,250 1.0 $55,850

TWOSTORY

1.0 $569,250 2.5 $102,950

Which of the following SAS statements completes the program and creates the desired report? a. id style; var bedroom baths price; b. id style; var style bedrooms baths price; c. id style; by style; var bedrooms baths price; d. id style; by style; var style bedrooms baths price;

Correct answer: c Your answer: The ID statement prints the ID variable as the left-most column and suppresses the OBS column. If you specify a variable in the ID statement and that same variable is listed in the VAR statement, then the variable appears twice in the report. The report lists the ID variable once for each BY group when you use the ID statement and the BY statement together, with the same variable listed in both statements. The BY lines are also suppressed in the report, and the value of the ID variable identifies the BY group.

39. The following SAS program is submitted: proc freq data=class; run; The SAS data set Class has two character variables and three numeric variables. How many tables are generated? a. 0

22 of 29

10/22/2013 1:50 PM

Quiz Results for Certification Practice Exam

https://support.sas.com/edu/OLTRN/61030/m0001/base9quizx.htm

b. c. d.

2 3 5

Correct answer: d Your answer: There are five tables generated. By default, the FREQ procedure generates a report that contains a frequency table for every variable in the data set, including both character and numeric variables.

40. The following SAS program is submitted: proc means data=sasuser.houses mean; <insert statement(s) here> run; The following report is produced:

style
CONDO RANCH SPLIT TWOSTORY

N Obs Variable Label

Mean

4 bedrooms Number of bedrooms 2.7500000 baths Number of bathrooms 2.1250000 4 bedrooms Number of bedrooms 2.2500000 baths Number of bathrooms 2.0000000 3 bedrooms Number of bedrooms 2.6666667 baths Number of bathrooms 1.8333333 4 bedrooms Number of bedrooms 3.0000000 baths Number of bathrooms 1.8750000

Which of the following statements completes the program and creates the desired report? a. class style; b. var bedrooms baths; c. class style; var bedrooms baths; d. var style; class bedrooms baths;

Correct answer: c Your answer: In the desired report, the variable Style is a grouping variable, and the variables Bedrooms and Baths are analyzed. In the MEANS procedure, the CLASS statement specifies grouping variables. The VAR statement specifies which numeric variables are analyzed.

23 of 29

10/22/2013 1:50 PM

Quiz Results for Certification Practice Exam

https://support.sas.com/edu/OLTRN/61030/m0001/base9quizx.htm

41. The following SAS program is submitted: options pageno=1 number; proc print data=sasuser.houses; run;

proc means data=sasuser.shoes; run; The report created by the PRINT procedure generates five pages of output. What is the page number on the first page that is generated by the MEANS procedure? a. b. c. d. 1 2 5 6

Correct answer: d Your answer: The PAGENO= option specifies a starting page number for the output. The page numbers increment by 1, starting with the value in the PAGENO= option. If the PRINT procedure generates five pages of output, then the MEANS procedure output will start on page 6. If you move the OPTIONS statement after the PRINT procedure, the MEANS procedure output would start on page 1.

42. Which one of the following statements describes creating user-defined formats with the FORMAT procedure? a. b. c. d. User-defined formats cannot end in a number. The format name can be up to 200 characters in length. The format name can end with a period in the value statement. User-defined formats can share a name with a SAS format if they are stored in a different location.

Correct answer: a Your answer: User-defined formats are created using the FORMAT procedure. The name of the user-defined format is specified in the VALUE statement. The name of the user-defined format must start with a letter or an underscore, and can continue with any letter, number, or underscore up to 32 characters. However, the name of the user-defined format cannot end in a number. The name of a user-defined format cannot be the name of an existing SAS format. When you specify the name of a user-defined format in the VALUE statement, you do not use a period.

43. The following SAS program is submitted: ods html file='newfile.html'; proc print data=sasuser.houses; run; proc means data=sasuser.houses; run;

24 of 29

10/22/2013 1:50 PM

Quiz Results for Certification Practice Exam

https://support.sas.com/edu/OLTRN/61030/m0001/base9quizx.htm

proc freq data=sasuser.shoes; run; ods html close; proc print data=sasuser.shoes; run; How many HTML files are created? a. b. c. d. 1 2 3 4

Correct answer: a Your answer: This program creates one HTML file named Newfile.html. By default, one HTML file is created for each FILE= or BODY= option in the ODS HTML statement. The ODS HTML CLOSE statement closes the open HTML file and ends the output capture. The Newfile.html file contains the output from the PRINT, MEANS, and FREQ procedures.

44. Which statement directs output to an HTML file? a. b. c. d. the ODS HTML statement the HTML statement the EXPORT statement the PRINTTO statement

Correct answer: a Your answer: The ODS HTML statement directs output to an HTML file. HTML is an option that can be used in the ODS HTML statement to specify which destination you are opening and/or closing. EXPORT and PRINTTO are procedures in SAS, not statements.

45. The following SAS program is submitted: data test; set ia.flts_pts; if job_code='fltat3' then description='Flight Attendant'; length description 8; run; The variable Job_code is a character variable with a length of 6 bytes. What is the result? a. b. c. d. The variable Description with a length of 6 bytes is created. The variable Description with a length of 8 bytes is created. The variables Description with a length of 16 bytes is created. The variable Description is not created. The DATA step fails because of errors.

25 of 29

10/22/2013 1:50 PM

Quiz Results for Certification Practice Exam

https://support.sas.com/edu/OLTRN/61030/m0001/base9quizx.htm

Correct answer: d Your answer: The DATA step fails because of errors. The LENGTH statement can be used to assign a length to a character or numeric variable. When this code is compiled, SAS encounters description in the assignment statement before the LENGTH statement, and description is set to a character variable with a length of 16. When the LENGTH statement compiles, there is a conflict because the LENGTH statement attempts to assign a numeric length to the character variable Description, and the step fails because of the error.

46. The descriptor and data portions of the Work.Salaries data set are shown below.

Variable Type Len Pos name salary status Char 8 Char 8 Char 8 0 16 8

name Liz

status salary S 15,600 26,700 35,000

Herman S Marty S

The following SAS program is submitted: proc print data=work.salaries; where salary<20000; run; No observations are output. Which of the following answers would result in a report of individuals with Salary less than $20,000 upon re-execution of the program? a. b. c. d. Right justify the Salary value in the WHERE statement in the PRINT step. Use a PUT function to write the Salary values with leading zeroes in a DATA step before the PRINT step. Change 20000 (which is a numeric constant) to '20,000' (which is a character constant) in the WHERE statement in the PRINT step. Change the < operator to the le operator in the WHERE statement in the PRINT step.

Correct answer: c Your answer: In order to output the desired observations, you must specify the value in the WHERE statement as a character value. Salary is defined as a character variable. The variable and value that are referenced in the WHERE statement must be of the same type.

26 of 29

10/22/2013 1:50 PM

Quiz Results for Certification Practice Exam

https://support.sas.com/edu/OLTRN/61030/m0001/base9quizx.htm

47. The following SAS program is submitted: data work.totalsales; set work.monthlysales(keep=year product sales); retain monthsales{12}; array monthsales{12}; do i=1 to 12; monthsales{i}=sales; end; cnt+1; monthsales{cnt}=sales; run; The data set named Work.Monthlysales has one observation per month for each of five years for a total of 60 observations. What is the result? a. b. c. d. The program fails execution because of data errors. The program fails execution because of syntax errors. The program runs with warnings and creates the Work.Totalsales data set with 60 observations. The program runs without errors or warnings and creates the Work.Totalsales data set with 60 observations.

Correct answer: b Your answer: The program fails to execute because there is a syntax error in the RETAIN statement. The curly brackets are used to define the array elements in the ARRAY statement. Curly brackets are not used to define the initial value for a variable in the RETAIN statement.

48. Which one of the following TITLE statements displays Jane's Dog as the title of SAS output? a. title "Jane"s Dog"; b. title 'Jane"s Dog'; c. title "Jane's Dog"; d. title 'Jane' ' 's Dog'l

Correct answer: c Your answer: To hide an unmatched single quotation mark, you surround the title text with matched double quotation marks. SAS expects single and double quotation marks to be in pairs.

49. The data set Work.Allmonths contains four quarters of data. A DATA step is submitted and a portion of the SAS log is shown below.

27 of 29

10/22/2013 1:50 PM

Quiz Results for Certification Practice Exam

https://support.sas.com/edu/OLTRN/61030/m0001/base9quizx.htm

SAS Log 208 209 210 211 212 213 214 215 216 data arrays; set work.allmonths(keep=quarter num_sold); by quarter; array sold{3}; if first.quarter then cnt=1; sold{cnt}=num_sold; cnt+1; if last.quarter then output; run;

ERROR: Array subscript out of range at line 213 column 4. quarter=2 num_sold=3 FIRST.quarter=0 LAST.quarter=1 sold1=. sold2=. sold3=. cnt=4 _ERROR_=1 _N_=7 NOTE: The SAS System stopped processing this step because of errors. NOTE: There were 8 observations read from the dataset WORK.ALLMONTHS. WARNING: The data set WORK.ARRAYS may be incomplete. When this step was stopped there were 1 observations and 6 variables. WARNING: Data set WORK.ARRAYS was not replaced because this step was stopped. NOTE: DATA statement used: real time 0.10 seconds

Which of the following answers would correct the error message? a. b. c. d. Reverse the order of lines 213 and 214. Increase the ARRAY dimension to a value of 4. Sort the Work.Allmonths data set in descending order by the Quarter variable. Add a WHERE= data set option to the Work.Allmonths data set to limit values of the variable Cnt to 3 or less.

Correct answer: b Your answer: There are three dimensions in the sold array and four quarters of data. When the Cnt variable has a value of 4, the value exceeds the specified range in the array and causes SAS to stop processing. Because there are four quarters, increasing the array dimension value to 4 will accommodate all of the elements within the array.

50. The following SAS program is submitted: data test; infile 'file-specification'; input country $ amount; run; Which one of the following automatic variables can be used to test whether a value for the variable Amount is non-numeric?

28 of 29

10/22/2013 1:50 PM

Quiz Results for Certification Practice Exam

https://support.sas.com/edu/OLTRN/61030/m0001/base9quizx.htm

a. b. c. d.

_N_ _ERROR_ _NUMERIC_ _CHARACTER_

Correct answer: b Your answer: _ERROR_ is an automatic variable that is created by the DATA step. _ERROR_ records when an error is encountered. The value of _ERROR_ is set to 0 by default, and the value changes to 1 when an input error occurs. _N_ is an automatic variable that is created by the DATA step. The value of _N_ represents the number of times the DATA step has iterated. _NUMERIC_ and _CHARACTER_ are not automatic DATA step variables; they are reserved names for use as variable name lists.

Copyright 2008 SAS Institute Inc., Cary, NC, USA. All rights reserved.

29 of 29

10/22/2013 1:50 PM

You might also like