← All programs

specialist-base-programming

Category Other courses

Exam Content Guide

1

SAS 9.4 Base Programming – Performance Based Exam

Access and Create Data Structures: 20-25%

Create temporary and permanent SAS data sets.

  • Use a DATA step to create a SAS data set from an existing SAS data set.

Investigate SAS data libraries using base SAS utility procedures.

  • Use a LIBNAME statement to assign a library reference name to a SAS library.
  • Investigate a library programmatically using the CONTENTS procedure.

Access data.

  • Access SAS data sets with the SET statement.
  • Use PROC IMPORT to access non-SAS data sources.

o Read delimited and Microsoft Excel (.xlsx) files with PROC IMPORT.

o Use PROC IMPORT statement options (OUT=, DBMS=, REPLACE)

o Use the GUESSINGROWS statement

  • Use the SAS/ACCESS XLSX engine to read a Microsoft Excel workbook.xlsx file.

Combine SAS data sets.

  • Concatenate data sets.
  • Merge data sets one-to-one.
  • Merge data sets one-to-many.

Create and manipulate SAS date values.

  • Explain how SAS stores date and time values.
  • Use SAS informats to read common date and time expressions.
  • Use SAS date and time formats to specify how the values are displayed.

Control which observations and variables in a SAS data set are processed and

output.

  • Use the WHERE statement in the DATA step to select observations to be processed.
  • Subset variables to be output by using the DROP and KEEP statements.
  • Use the DROP= and KEEP= data set options to specify columns to be processed and/or

output.

Manage Data: 35-40%

Exam Content Guide

2

Sort observations in a SAS data set.

  • Use the SORT Procedure to re-order observations in place or output to a new dataset

with the OUT= option.

  • Remove duplicate observations with the SORT Procedure.

Conditionally execute SAS statements.

  • Use IF-THEN/ELSE statements to process data conditionally.
  • Use DO and END statements to execute multiple statements conditionally.

Use assignment statements in the DATA step.

  • Create new variables and assign a value.
  • Assign a new value to an existing variable.
  • Assign the value of an expression to a variable.
  • Assign a constant date value to a variable.

Modify variable attributes using options and statements in the DATA step.

  • Change the names of variables by using the RENAME= data set option.
  • Use LABEL and FORMAT statements to modify attributes in a DATA step.
  • Define the length of a variable using the LENGTH statement.

Accumulate sub-totals and totals using DATA step statements.

  • Use the BY statement to aggregate by subgroups.
  • Use first. and last. processing to identify where groups begin and end.
  • Use the RETAIN and SUM statements.

Use SAS functions to manipulate character data, numeric data, and SAS date

values.

  • Use SAS functions such as SCAN, SUBSTR, TRIM, UPCASE, and LOWCASE to perform

tasks such as the tasks shown below.

o Replace the contents of a character value.

o Trim trailing blanks from a character value.

o Search a character value and extract a portion of the value.

o Convert a character value to upper or lowercase.

  • Use SAS numeric functions such as SUM, MEAN, RAND, SMALLEST, LARGEST, ROUND,

and INT.

  • Create SAS date values by using the functions MDY, TODAY, DATE, and TIME.
  • Extract the month, year, and interval from a SAS date value by using the functions

YEAR, QTR, MONTH, and DAY.

  • Perform calculations with date and datetime values and time intervals by using the

functions INTCK, INTNX, DATDIF and YRDIF.

Exam Content Guide

3

Use SAS functions to convert character data to numeric and vice versa.

  • Explain the automatic conversion that SAS uses to convert values between data types.
  • Use the INPUT function to explicitly convert character data values to numeric values.
  • Use the PUT function to explicitly convert numeric data values to character values.

Process data using DO LOOPS.

  • Explain how iterative DO loops function.
  • Use DO loops to eliminate redundant code and to perform repetitive calculations.
  • Use conditional DO loops.
  • Use nested DO loops.

Restructure SAS data sets with PROC TRANSPOSE.

  • Select variables to transpose with the VAR statement.
  • Rename transposed variables with the ID statement.
  • Process data within groups using the BY statement.
  • Use PROC TRANSPOSE options (OUT=, PREFIX= and NAME=).

Use macro variables to simplify program maintenance.

  • Create macro variables with the %LET statement
  • Use macro variables within SAS programs.

Error Handling: 15-20%

Identify and resolve programming logic errors.

  • Use the PUTLOG Statement in the Data Step to help identify logic errors.
  • Use PUTLOG to write the value of a variable, formatted values, or to write values of all

variables.

  • Use PUTLOG with Conditional logic.
  • Use temporary variables N and ERROR to debug a DATA step.

Recognize and correct syntax errors.

  • Identify the characteristics of SAS statements.
  • Define SAS syntax rules including the typical types of syntax errors such as misspelled

keywords, unmatched quotation marks, missing semicolons, and invalid options.

  • Use the log to help diagnose syntax errors in a given program.

Exam Content Guide

4

Generate Reports and Output: 15-20%

Generate list reports using the PRINT procedure.

  • Modify the default behavior of PROC PRINT by adding statements and options such as

o use the VAR statement to select and order variables.

o calculate totals with a SUM statement.

o select observations with a WHERE statement.

o use the ID statement to identify observations.

o use the BY statement to process groups.

Generate summary reports and frequency tables using base SAS procedures.

  • Produce one-way and two-way frequency tables with the FREQ procedure.
  • Enhance frequency tables with options (NLEVELS, ORDER=).
  • Use PROC FREQ to validate data in a SAS data set.
  • Calculate summary statistics and multilevel summaries using the MEANS procedure
  • Enhance summary tables with options.
  • Identify extreme and missing values with the UNIVARIATE procedure.

Enhance reports system user-defined formats, titles, footnotes and SAS System

reporting options.

  • Use PROC FORMAT to define custom formats.

o VALUE statement

o CNTLIN= option

  • Use the LABEL statement to define descriptive column headings.
  • Control the use of column headings with the LABEL and SPLIT=options in PROC PRINT

output.

Generate reports using ODS statements.

  • Identify the Output Delivery System destinations.
  • Create HTML, PDF, RTF, and files with ODS statements.
  • Use the STYLE=option to specify a style template.
  • Create files that can be viewed in Microsoft Excel.

Export data

  • Create a simple raw data file by using the EXPORT procedure as an alternative to the

DATA step.

  • Export data to Microsoft Excel using the SAS/ACCESS XLSX engine.

Note: All 23 main objectives will be tested on every exam. The 70 expanded objectives are

provided for additional explanation and define the entire domain that could be tested.