0% found this document useful (0 votes)
19 views

Advanced Programming Sas94

Uploaded by

akhilesh
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
19 views

Advanced Programming Sas94

Uploaded by

akhilesh
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

Exam Content Guide

SAS 9.4 Advanced Programming – Performance Based Exam

Accessing Data Using SQL (35%)


Generate detail reports by working with a single table, joining tables, or using set
operators in SQL

• Use PROC SQL to perform SQL queries.


• Select columns in a table with a SELECT statement and FROM clause.
• Create a table from a query result set.
• Create new calculated columns.
• Assign an alias with the AS keyword.
• Use case logic to select values for a column.
• Retrieve rows that satisfy a condition with a WHERE clause.
• Subset data by calculated columns.
• Join tables - inner joins, full joins (coalesce function), right joins, left joins.
• Combine tables using set operators - union, outer union, except, intersect.
• Sort data with an ORDER BY clause.
• Assign labels and formats to columns.

Generate summary reports by working with a single table, joining tables, or using
set operators in the SQL.

• Summarize data across and down columns using summary functions (AVG, COUNT,
MAX, MIN, SUM).
• Group data using GROUP BY clause.
• Filter grouped data using HAVING clause.
• Eliminate duplicate values with the DISTINCT keyword.

Construct sub-queries and in-line views within an SQL procedure step.

• Subset data by using non-correlated subqueries.


• Reference an in-line view with other views or tables (multiple tables).

Use SAS SQL procedure enhancements.

• Use SAS data set options with PROC SQL (KEEP=, DROP=, RENAME=, OBS=).
• Use PROC SQL invocation options (INOBS=, OUTOBS=. NOPRINT, NUMBER)
• Use SAS functions (SCAN, SUBSTR, LENGTH).
• Access SAS system information by using DICTIONARY tables (members, tables,
columns)
• Use the CALCULATED keyword.

1
Exam Content Guide

Macro Processing (35%)


Create and use user-defined and automatic macro variables within the SAS Macro
Language.

• Define and use macro variables.


• Use macro variable name delimiter. (.)
• Use INTO clause of the SELECT statement in SQL to create a single variable or a list of
variables.
• Use the SYMPUTX routine in a DATA Step to create a single variable or a list of
variables.
• Control variable scope with:
o %GLOBAL statement
o %LOCAL statement
o SYMPUTX scope parameter

Automate programs by defining and calling macros using the SAS Macro Language.

• Define a macro using the %MACRO and %MEND statements.


• Calling a macro with and without parameters.
• Document macro functionality with comments
• Generate SAS Code conditionally by using the %IF-%THEN-%ELSE macro statements or
iterative %DO statements.
• Use the SAS AUTOCALL facility to permanently store and call macros.

Use macro functions.

• Use macro functions. (%SCAN, %SUBSTR, %UPCASE)


• Use macro quoting functions. (%NRSTR, %STR)
• Use macro evaluation functions. (%SYSEVALF)
• Use %SYSFUNC to execute DATA step functions within the SAS Macro Language.

Debug macros.

• Trace the flow of execution with the MLOGIC option.


• Examine the generated SAS statements with the MPRINT option.
• Examine macro variable resolution with the SYMBOLGEN option.
• Use the %PUT statement to print information to the log.

Create data-driven programs using SAS Macro Language.

• Create a series of macro variables.


• Use indirect reference to macro variables. (&&, etc.)
• Incorporate DICTONARY tables in data driven macros.
• Generate repetitive macro calls.

2
Exam Content Guide

Advanced Techniques (30%)


Process data using 1 and 2 dimensional arrays.

• Define and use character arrays.


• Define and use numeric arrays.
• Create variables with arrays.
• Reference arrays within a DO loop.
• Specify the array dimension with the DIM function.
• Define arrays as temporary arrays.
• Load initial values for an array from a SAS data set.

Process data using hash objects.

• Declare hash and hash iterator objects


o Dataset argument
o Ordered argument
o Multidata argument
• Use hash object methods
o definekey()
o definedata()
o definedone()
o find()
o add()
o output()
• Use hash iterator object methods
o first()
o next()
o last()
o prev()
• Use hash objects as lookup tables.
• Use hash objects to create sorted data sets.
• Use hash iterator objects to access data in forward or reverse key order.

Use SAS utility procedures.


• Specify a template using the PICTURE statement within the FORMAT Procedure*
o Specify templates for date, time, and datetime values using directives.
o Specify templates for numeric values using digit selectors.
o PICTURE statement options: round, default, datatype, multiplier, prefix
• Create custom functions with the FCMP procedure
o Create character and numeric custom functions with single or multiple
arguments.
o Create custom functions based on conditional processing.
o Use custom functions with the global option CMPLIB=.

3
Exam Content Guide

Use advanced functions.


• Finding strings or words with the FINDC/FINDW functions.
• Counting strings or words with the COUNT/COUNTC/COUNTW functions.
• Retrieve previous values with the LAG function.
• Regular expression pattern matching with PRX functions*
o Metacharacters: ()[]{}*+?.|^$\d\D\s\S\w\W
o Functions and call routines: PRXMATCH, PRXPARSE, PRXCHANGE

Note: All 13 main objectives will be tested on every exam. The additional details provide for
additional explanation and define the entire domain that could be tested.
* For these topics, a reference aid is provided during the exam to assist with
directives/metacharacters.

You might also like