SIMULATION
Scenario:
This project will use data setcert.input04. At any time, you may save your program
asprogram04incert\programs. Write a SAS program that will create the data setresults.output04.
In this program, complete the following mathematical actions, in the following order:
Round VAR1 and VAR2 to the nearest integer values.
Multiply the rounded VAR1b y the rounded VAR2 and assign the new value to VAR3.
Add VAR12 through VAR19 (8 variables) together, ignoring missing values. Assign the sum to VAR20.
For observation 16, what is the value ofVAR3? Enter your numeric answer in the space below:
80136
Explanation:
SAS code that could be used to solve this project:
data results.output04;
set cert.input04;
var3=round(var1,1)*round(var2,1);
var20=sum(of var12-var19);
run;
proc print data=results.output04 (obs=16 firstobs=16);
var var3 var20;
run;
The 'obs' option controls the last observation SAS processes. If you set obs=16, SAS would read and
process only up to the 16th observation in the data set.
The 'firstobs' option controls the starting observation. If you set firstobs=16, SAS would start reading
and processing from the 16th observation.
SIMULATION
Scenario:
This project will use data setcert.input04. At any time, you may save your program
asprogram04incert\programs. Write a SAS program that will create the data setresults.output04.
In this program, complete the following mathematical actions, in the following order:
Round VAR1 and VAR2 to the nearest integer values.
Multiply the rounded VAR1b y the rounded VAR2 and assign the new value to VAR3.
Add VAR12 through VAR19 (8 variables) together, ignoring missing values. Assign the sum to VAR20.
For observation 16, what is the value ofVAR20? Enter your numeric answer in the space below.
Round your answer to the nearest whole number. Save your program
asprogram04.sasincert\programs before continuing with the next project
3175
Explanation:
SAS code that could be used to solve this project:
data results.output04;
set cert.input04;
var3=round(var1,1)*round(var2,1);
var20=sum(of var12-var19);
run;
proc print data=results.output04 (obs=16 firstobs=16);
var var3 var20;
run;
If you got this question wrong because you didn't round to the nearest whole number, please know
that the actual exam will restrict you to entering only a whole number to prevent this from occurring.
The correct answer is: 3175
SIMULATION
This project will use data set cert.input08a and cert.input08b. At
any time, you may save your program
as program08 in cert\programs.
Both data sets contain a common numeric variable named ID.
Write a program that will use a SAS DATA Step to:
o Combine data sets cert.input08a and cert.input08b by
matching values of the ID variable.
o Write only observations that are in both data sets to a
new data set named results.match08.
o Write all other non-matching observations from either
data set to a new data set named results.nomatch08.
o Exclude all variables that begin with
"ex" from results.nomatch08.
How many observations (rows) are inresults.match08?
Enter your numeric answer in the space below:
1200
Explanation:
SAS code that could be used to solve this project:
proc sort data=cert.input08a out=work.input08a;
by ID;
run;
proc sort data=cert.input08b out=work.input08b;
by ID;
run;
data results.match08 results.nomatch08 (drop=ex: );
merge work.input08a (in=a) work.input08b (in=b);
by ID;
if a and b then output results.match08;
else output results.nomatch08;
run;
proc contents data=results.match08;
run:
proc contents data=results.nomatch08;
run;
The correct answer is: 1200
SIMULATION
Scenario:
This project will use data set cert.input08a and cert.input08b. At
any time, you may save your program
as program08 in cert\programs.
Both data sets contain a common numeric variable named ID.
Write a program that will use a SAS DATA Step to:
o Combine data sets cert.input08a and cert.input08b by
matching values of the ID variable.
o Write only observations that are in both data sets to a
new data set named results.match08.
o Write all other non-matching observations from either
data set to a new data set named results.nomatch08.
o Exclude all variables that begin with
"ex" from results.nomatch08.
How many variables (columns) are in results.match08
117
Explanation:
proc sort data=cert.input08b out=work.input08b;
by ID;
run:
data results.match08 results.nomatch08 (drop=ex: );
merge work.input08a (in=a) work.input08b (in=b);
by ID;
if a and b then output results.match08;
else output results.nomatch08;
run;
proc contents data=results.match08;
SAS code that could be used to solve this project:
proc
sort data=cert.input08a out=work.input08a;
by ID;
run:
run;
proc contents data=results.nomatch08;
run;
The correct answer is: 117
SIMULATION
Scenario:
This project will use data set cert.input08a and cert.input08b. At
any time, you may save your program
as program08 in cert\programs.
Both data sets contain a common numeric variable named ID.
Write a program that will use a SAS DATA Step to:
o Combine data sets cert.input08a and cert.input08b by
matching values of the ID variable.
o Write only observations that are in both data sets to a
new data set named results.match08.
o Write all other non-matching observations from either
data set to a new data set named results.nomatch08.
o Exclude all variables that begin with
"ex" from results.nomatch08.
How many observations (rows) are inresults.nomatch08?
2
Explanation:
proc sort data=cert.input08b out=work.input08b;
by ID;
run:
SAS code that could be used to solve this project:
proc sort data=cert.input08a out=work.input08a;
by ID;
run:
data results.match08 results.nomatch08 (drop=ex: );
merge work.input08a (in=a) work.input08b (in=b);
by ID;
if a and b then output results.match08;
else output results.nomatch08;
run;
proc contents data=results.match08;
run;
proc contents data=results.nomatch08;
run;
The correct answer is: 2
SIMULATION
Scenario:
This project will use data set cert.input08a and cert.input08b. At
any time, you may save your program
as program08 in cert\programs.
Both data sets contain a common numeric variable named ID.
Write a program that will use a SAS DATA Step to:
o Combine data sets cert.input08a and cert.input08b by
matching values of the ID variable.
o Write only observations that are in both data sets to a
new data set named results.match08.
o Write all other non-matching observations from either
data set to a new data set named results.nomatch08.
o Exclude all variables that begin with
"ex" from results.nomatch08.
How many variables (columns) are in _______________ results.nomatch08
Enter your numeric answer in the space below:
Save your program as ______________ program08.sas in folder cert programs
before continuing with the next project.
5
Explanation:
SAS code that could be used to solve this project:
Proc
sort data=cert.input08a out=work.input08a;
by ID;
run;
proc sort data=cert.input08b out=work.input08b;
by ID;
run;
data results.match08 results.nomatch08 (drop=ex: );
merge work.input08a (in=a) work.input08b (in=b);
by ID;
if a and b then output results.match08;
else output results.nomatch08;
run;
proc contents data=results.match08;
run;
proc contents data=results.nomatch08;
run;
The correct answer is: 5
SIMULATION
Scenario:
This project will use data set cert.input12. At any time, you may
save your program as program12 in cert\programs.
cert.input12 contains a single observation with two variables:
o salary
o year
Write a SAS program that will:
o Create an output data set results.output12.
o Read cert.input12 as input.
o Increase the salary variable by 5.65% annually until it is
greater than $500,000.
o Increment the year variable by 1 with each annual
increase.
o Create an output data set results.output12 that has one
observation for each value of year. Each observation
should have a year and salary variable.
What is the maximum salary hat is less than $500,000? Enter your numeric answer in the space
below (Round your answer to the nearest integer)
498737
Explanation:
data results.output12;
set cert.input12;
do until (salary gt 500000);
salary=salary*1.0565;
year+1;
output;
end;
run;
proc print data=results.output 12;
run;
SIMULATION
Scenario:
This project will use data set cert.input12. At any time, you may
save your program as program12 in cert\programs.
cert.input12 contains a single observation with two variables:
o salary
o year
Write a SAS program that will:
o Create an output data set results.output12.
o Read cert.input12 as input.
o Increase the salary variable by 5.65% annually until it is
greater than $500,000.
o Increment the year variable by 1 with each annual
increase.
o Create an output data set results.output12 that has one
observation for each value of year. Each observation
should have a year and salary variable.
What is the value of year when the above salary occurs? Enter your numeric answer in the space
below.
2027
Explanation:
data results.output12;
set cert.input12;
do until (salary gt 500000);
salary=salary*1.0565;
year+1;
output;
end;
run;
proc print data=results.output 12;
run;
SIMULATION
Scenario:
This project will use data set cert.input13. At any time, you may
save your program as program13 in cert\programs.
This data set contains 1001 observations and 2 variables:
o Date1, a numeric variable representing an unformatted
SAS date value. Example: 12001.
o Charnum, a character variable representing a monetary
amount. Example: $50,000.
Write a SAS program that will:
o Save the new data set as results.output13.
o Create a new variable Chdate that converts
the datel variable to a character variable that is in the
format ddmonyyyy, such as 11NOV1992.
o Create a new variable num1 that converts
the Charnum variable to a numeric variable.
What is the value ofChdatefor observation 52?
30DEC1992
Explanation:
data results.output13;
set cert.input13;
Chdate=put(date 1,date9.);
num 1=input(Charnum,dollar7.);
run;
proc print data=results.output13 (firstobs=52 obs=52);
run;
SIMULATION
Scenario:
This project will use data set cert.input13. At any time, you may
save your program as program13 in cert\programs.
This data set contains 1001 observations and 2 variables:
o Date1, a numeric variable representing an unformatted
SAS date value. Example: 12001.
o Charnum, a character variable representing a monetary
amount. Example: $50,000.
Write a SAS program that will:
o Save the new data set as results.output13.
o Create a new variable Chdate that converts
the datel variable to a character variable that is in the
format ddmonyyyy, such as 11NOV1992.
o Create a new variable num1 that converts
the Charnum variable to a numeric variable.
What is the average (mean) of the num1 variable for the entire data set?
Enter your numeric answer in the space below (Round your answer to the nearest
integer).
51763
Explanation:
data results.output13;
set cert.input13;
Chdate=put(date 1,date9.);
num 1=input(Charnum,dollar7.);
run;
proc means data=results.output13;
var num 1;
run;
SIMULATION
Scenario:
This project will use data set cert.input27. At any time, you may
save your program as program27 in cert\programs. You will use
this program in the next project.
Write a SAS program that will:
o Create output data set results.output27a as a subset
of cert.input27 where the country variable's value is
"US" (any variation of case, such as US or us).
o Sort results.output27a:
" first by the variable state in ascending order
" then by Postal_Code in descending order
" and finally by employee_ID in ascending order.
Run the program and use the results to answer the question below.
What is the value of Employee_ID for observation 100 in results.output27a?
120781
Explanation:
proc sort data=cert.input27
out=results.output27a(where=(upcase (country)='US'));
by state descending Postal_Code employee_ID;
run;
proc print data=results.output27a (firstobs=100 obs=100);
var employee_ID;
run:
SIMULATION
Scenario:
Continuing with the previous program (program27), add a PROC SORT step that satisfies the
following criteria:
o Creates the output dataset results.output27b
o Sorts the observations by order.
o Removes duplicate values of the first occurrence found during the sort.
What is the value of Employee_ID for observation 98 inresults.output27b?
120779
Explanation:
proc sort data=cert.input27 out=results.output27b nodupkey;
by descending postal_code;
run;
proc print data=results.output27b (firstobs=98 obs=181);
var employee_ID;
run:
SIMULATION
Scenario:
Continuing with the previous program (program27), add a PROC SORT step that satisfies the
following criteria:
o Creates the output dataset results.output27b
o Sorts the observations by order.
o Removes duplicate values of the first occurrence found during the sort.
What is the value of Employee_ID for observation 181 inresults.output27b?
120272
Explanation:
proc sort data=cert.input27 out=results.output27b nodupkey;
by descending postal_code;
run;
proc print data=results.output27b (firstobs=98 obs=181);
var employee_ID;
run:
SIMULATION
Scenario:
This project will use data setcert.input36. At any time, you may save your program asprogram36 in
cert\programs. Write a SAS program that will clean the data incert.input36as follows:
Step 1:
create a temporary data set, cleandata36.
In this data set, convert all case.
Then keep only observations with group equal to 'A' or 'B'.
Step 2:
Determine the MEDIAN value for the Kilograms variable for each group(A,B) in the cleandata36
data set. Round MEDIAN to the nearest whole number.
Step 3:
Create results.output36 from cleandata36
Ensure that all values for variable Kilogramsare between 40 and 200, inclusively.
If the value is missing or out of range, replace the value with the MEDIAN Kilograms value for the
respectivegroup(A,B) calculated in step 2
How many observations are inresults.output36?
4992
Explanation:
data work.cleandata36;
set cert.input36;
group=upcase(group);
if group in ('A','B');
run;
proc means data=work.cleandata36 median;
class group;
var kilograms;
run;
data results.output36;
set cleandata36;
if Kilograms < 40 or Kilograms > 200 then do;
if group='A' then kilograms=79; else kilograms=89;
end;
run;
proc contents data=results.output36;
run;
SIMULATION
Scenario:
This project will use data setcert.input36. At any time, you may save your program asprogram36 in
cert\programs. Write a SAS program that will clean the data incert.input36as follows:
Step 1:
create a temporary data set, cleandata36.
In this data set, convert all case.
Then keep only observations with group equal to 'A' or 'B'.
Step 2:
Determine the MEDIAN value for the Kilograms variable for each group(A,B) in the cleandata36
data set. Round MEDIAN to the nearest whole number.
Step 3:
Create results.output36 from cleandata36
Ensure that all values for variable Kilogramsare between 40 and 200, inclusively.
If the value is missing or out of range, replace the value with the MEDIAN Kilograms value for the
respectivegroup(A,B) calculated in step 2
What is the MEAN Kilograms value for group='A' in the results.output36 data set?
76.3
Explanation: