SAS Institute A00-231 Practice Exams
Last updated on Oct 21,2026- Exam Code: A00-231
- Exam Name: SAS 9.4 Base Programming -- Performance-based exam
- Certification Provider: SAS Institute
- Latest update: Oct 21,2026
Given the following data set:
![]()
Which type of statement was included as a component of a transpose procedure step to produce the following data set?

- A . CLASS
- B . ID
- C . IDLABEL
- D . VAR
Which statement about SAS libraries is true? Select one:
- A . You refer to a SAS library by a logical name called a lib name.
- B . A SAS library is a collection of one or more SAS files that are referenced and stored as a unit.
- C . A single SAS library must contain files that are stored in different physical locations.
- D . At the end of each session, SAS deletes the contents of all SAS libraries.
SIMULATION
Scenario:
This project will use data set cert.input08a and cert.input08b. At any time, you may save your program as program08 in certprograms.
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?
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
The following SAS program is submitted:


Why does the program produce an error? Select one:
- A . The PAGENO option is invalid in the OPTIONS statement.
- B . The RUN statement is missing after the FORMAT procedure.
- C . The format name contains a period in the VALUE statement.
- D . The LABEL option is missing from the PROC PRINT statement.
The following SAS program is submitted:
data work.test;
type=’SQL’;
if type=’SAS’ then description=’SAS Program’;
else description=’other’; length description 8;
run;
What occurs when the program is submitted?
- A . The variable Description is created as an 11-byte character variable and is assigned the value ‘SAS program’ in the DATA step.
- B . The variable Description is created as a 5-byte character variable and is assigned the value ‘SAS P’ in the DATA step.
- C . The variable Description is created as an 8-byte character variable and is assigned the value ‘SAS Prog’ in the DATA step.
- D . The variable Description is created as an 11-byte character variable and the DATA step fails due to errors.
SIMULATION
Scenario:
This project will use data setcert.input36. At any time, you may save your program asprogram36 in certprograms. 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?
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.input04. At any time, you may save your program asprogram04incertprograms. 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.sasincertprograms before continuing with the next project
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
Scenario:
This project will use data setcert.input36. At any time, you may save your program asprogram36 in certprograms.
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 respective group (A, B) calculated in step 2
What is the MEAN Kilograms value for group=’A’ in the results.output36 data set?
Explanation:

The following SAS program is submitted:

What are the values for x and y in the output data set?
- A . There is a syntax error: x and y are both set to missing.
- B . There is a syntax error: x=2, y is set to missing.
- C . There are no errors: x=2, y=200.
- D . There is a logic error: x=2, y=27.
The variable Name in the data set Employeehas a $CHAR10. format. The variable Name in the data set Sales has a $CHAR15. format.
The following SAS program is submitted: data both;
length name $ 20;
merge sales employee;
by id;
run;
What is the format for the variable Name in the data set Both?
Select one:
- A . $20
- B . $CHAR10
- C . $CHAR15
- D . $CHAR20