The learning is delivered using blended learning techniques via our digital learning platform. There are mini quizzes and comprehensive exercises throughout to help assess and reinforce your learning.
You will also be signposted to mock exams and given access to our certification exam preparation product MemoTrainer™
The SAS Base Certification exam is delivered as a proctored exam which will be scheduled by us and taken remotely at your home or office.
Duration: 38 - 40 hours over 2 weeks (plus additional time required for exercises and study)
By the end of this course you will be able to:
On day 1 we invite join a short online welcome to meet your instructor, introduce you to our Digital Learning platform and get you started on the eLearning modules of this course.
You will need 4 hours to complete the 6 eLearning modules with additional time required for exercises.
We ask you to complete these modules before joining us for the online masterclass on day 2.
This is followed by 3 x 4 hour live online classes to complete your learning.
In addition, you will also need to set aside time to complete the Hands-On exercises.
On day 1 we invite join a short online welcome to week 2 and get you started on the next set of eLearning modules of this course.
You will need 2.5 hours to complete the 3 eLearning modules on Day 1 and 2.5 hours to complete the eLearning modules on Day 4. Additional time is required for knowledge checks and Hands-On exercises.
We ask you to complete the eLearning before joining us for the online masterclasses.
What you should already know...
This course is aimed at those who are new to the Language of SAS.
You should already have:
- Knowledge of your computer system
- Basic computer literacy
- Some previous programming experience, although this is not essential
For the Hands-On practice activities in the course, you will need access to an environment that runs the programming Language of SAS. On our courses, we signpost you to some of the free tools available.
Check out the links below to review system requirements:
What you'll be taught...
FastTrack Base Certification (Part 1)
Introduction to SAS Programming (eLearning)
Learning Objective: Explain what the Language of SAS is used for and by whom.
• Explanation about SAS and who uses it
• Data Access
• Data Management
• Data Analysis
• Data Presentation
Basic Concepts (eLearning)
Learning Objective: Explain how the Language of SAS is used to access, manage, analyse and present data.
• What is a dataset, a database and a relational database?
• Libraries, LIBREFS, LIBNAME statement
• Referencing a dataset
• The Data Step procedure
• Basic Procedures including PROC MEANS and PROC PRINT
Investigating SAS datasets (eLearning)
Learning Objective: Define how to investigate datasets in the Language of SAS using two types of Procedure.
• The PRINT procedure
• Metadata, the CONTENTS procedure
• Types of data
Programming Concepts (eLearning)
Learning Objective: Describe the key programming concepts within the Language of SAS.
• Program components – Data Steps and Procedures
• Programming language is made up of statements, expressions, functions & call routines, options, formats, and informats
• Managing Syntax errors
• Naming conventions
Data Step Processing (eLearning)
Learning Objective: Explain how the two phases of Data Step Processing work to create new datasets and variables.
• Data Step syntax: The DATA and SET Statements
• Creating Datasets
• Creating Variables
• Data Step processing, i.e. what goes on in the background when you submit your data step code.
Selecting Variables and Observations (eLearning)
Learning Objective: Define Variables and Observations to be read from and written to datasets.
• KEEPing and DROPing Variables
• The IF Statement
• The WHERE Statement
• Comparison and Logical Operators
• FIRSTOBS= and OBS=
• Special WHERE operators
Introduction to Functions (live online class)
Learning Objective: Describe how functions are used to transform Numeric, Date and Character values.
• SUM and MEAN functions for numerics
• TODAY, MDY, DAY, WEEKDAY, WEEK, MONTH, QTR and YEAR
• UPCASE, LOWCASE and SUBSTR functions for character values
IF THEN ELSE Processing (live online class)
Learning Objective: Apply conditional logic to assign values to variables and to control which observations are written to multiple output datasets.
• IF-THEN-ELSE syntax
• DO-END syntax
• The LENGTH statement
• The OUTPUT statement
• The DELETE statement
####System Formats (live online class)
Learning Objective: Describe how formats can be used to change the displayed values of Character, Numeric and Date variables.
• System supplied formats
• $w. simple character
• w.d, COMMAw.d, NLMNYw.d numeric and currency formats
• DATEw. and DDMMYYw. date formats
Sorting data with PROC SORT (live online class)
Learning Objective: Use the Sort Procedure to re-order observations in a dataset, remove duplicate data and create an output dataset.
• PROC SORT syntax
• Using BY and NODUPKEY to remove duplicates
• The OUT= option
Combining Datasets Vertically (live online class)
Learning Objective: Explain the three methods which can be used to combine datasets together vertically.
• Concatenate multiple datasets
• Append one dataset to another
• Interleave multiple datasets
Combining Datasets Horizontally (live online class)
Learning Objective: Describe how datasets can be combined - horizontally or merged including matches and non-matches.
• One-to-One merging
• One-to-Many merging
• Selecting matches and non-matches
• Introduction to Proc SQL joins
Frequency Counts with PROC FREQ (live online class)
Learning Objective: Use the Freq Procedure to generate frequency counts and percentages of data values within a dataset.
• One-way frequencies
• Two-way frequencies
• N-way frequencies
• Create an output dataset
Summary Statistics with PROC MEANS (live online class)
Learning Objective: Use the Means Procedure to calculate summary statistics within a dataset, selecting classification and analysis variables.
• PROC MEANS syntax
• CLASS and VAR statements
• Specifying Statistic keywords
• Create an output dataset
Summary Tables with PROC TABULATE (live online class)
Learning Objective: Use the Tabulate Procedure to calculate summary statistics in one, two and three dimension tabular form.
• PROC TABULATE syntax
• CLASS and VAR statements
• Define table content – TABLE statement
• Produce multiple output tables
Analysing Values with PROC UNIVARIATE (live online class)
Learning Objective: Describe the 5 default statistical tables produced by the Univariate Procedure and the options available to modify the output.
• PROC UNIVARIATE syntax
• CLASS and VAR statements
• ID statement and Options
List Reports with PROC PRINT (live online class)
Learning Objective: Create customised list reports with the Print Procedure.
• Select variables and observations
• Creating and using variable labels
• Adding titles and footnotes
• Grouping observations
• Calculating totals and sub-totals
Reading from and writing to Non-SAS Files (live online class)
Learning Objective: Explain three methods which can be used to read from or write to non-SAS Files including delimited raw data and Excel files.
• Using Data Step syntax to read and write raw data
• Access Excel workbooks using the XLSX engine
• Creating output files with Proc Export
Error handling and Debugging (live online class)
Learning Objective: Writing and running SAS programs is often not successful on the first attempt so it’s important to be able to read and understand Log messages.
• NOTES, WARNINGS and ERRORS
• Making sense of common error messages
• Methods for finding and correcting errors
• Testing your code
• Debugging your code
FastTrack Base Certification (Part 2)
Character Functions (eLearning)
Learning Objective: Describe how functions are used to perform character transformation including:
SUBSTR, SCAN, TRIM, COMPRESS, LEFT, RIGHT, CATX, INDEX, FIND, UPCASE, LOWCASE, PROPCASE and TRANWRD
Numeric Functions (eLearning)
Learning Objective: Describe how functions are used to perform numeric transformation including:
SUM, MEAN, MIN, MAX, ROUND, CEIL, FLOOR, INT
Date Functions (eLearning)
Learning Objective: Describe how functions are used to perform date transformation including:
TODAY, DATE, MDY, DAY, MONTH, YEAR, WEEKDAY, QTR, TIME / DATETIME, TIMEPART / DATEPART, INTCK / INTNX, YRDIF / DATDIF
Changing Data Types Using Functions (live online class)
Learning Objective: Describe how functions are used to change variable type
• Automatic character to numeric conversion
• INPUT Function to convert character values to numeric
• Automatic numeric to character conversion
• PUT Function to convert numeric values to character
Summarising Observations and Variables (live online class)
Learning Objective: Describe how to use the Data Step to summarise variables and observations using:
• RETAIN statement
• SUM Statement
• BY-Group processing
Iterative Processing (live online class)
Learning Objective: Describe how to iterative and conditional loops to iterate multiple times within a Data Step and manipulate your dataset structures:
• Create and execute DO Loops
• Conditional processing with DO UNTIL and DO WHILE
• Combine Iterative and Conditional DO Loops
Array Processing (live online class)
Learning Objective: Describe how to use arrays within a Data Step to temporarily link variables across observation
• Define an Array
• Use Array References
• Using Arrays with DO loops, to perform repetitive actions and to store temporary and existing variables
Transposing Data (live online class)
Learning Objective: Describe how to use a Data Step and the Transpose procedure to transpose data tables:
• Using Conditional Logic in a DATA Step
• Using PROC TRANSPOSE
User Defined Formats with PROC FORMAT (live online class)
Learning Objective: Describe how to use the Format procedure to create and save user-specific formats for use:
• Apply formats to your data
• Create your own formats and apply them to your data
• Create a format with data from a dataset
Output Delivery System (live online class)
Learning Objective: Describe the Output Delivery System (ODS) and some of the ODS destinations
• The Output Delivery System (ODS)
• Control output to ODS destinations
• Create Datasets from Procedures
Introduction to Macro processing (eLearning)
Learning Objective: Explain basic Macro Processing in the Language of SAS.
• Compilation and Execution phases
• Macro Triggers
• The %PUT Statement
• Displaying macro variable values
Introduction to Macro variables (eLearning)
Learning Objective: Describe six different features of Macro Variables.
• Macro Variable Storage
• Macro Variable Resolution
• User-Defined Macro Variables
• The %LET Statement
• The SYMBOLGEN Option
• Delimiting Macro Variables
Macro Functions (eLearning)
Learning Objective: Identify three different types of Macro Functions.
• Character Functions – review
• Using Macro Functions
• Macro Functions for Numbers
• The %SYSFUNC and other functions including: %INDEX, %SCAN, %SUBSTR, %UPCASE, %BQUOTE, %STR, %NRBQUOTE, %NRSTR, %EVAL and % SYSEVALF.