- Level Professional
- Duration 18 hours
- Course by SAS
-
Offered by
About
In this course, you learn advanced techniques within the DATA step and procedures to manipulate data. “By the end of this course, a learner will be able to…” ● Use additional functions (LAG, FINDC/FINDW, and COUNT/COUNTC/COUNTW). ● Perform pattern matching using PRX functions. ● Process repetitive code, rotate data, and perform table lookups using arrays. ● Perform table lookups and sort data using hash and hash iterator objects. ● Create numeric templates using the FORMAT procedure. ● Create custom functions using the FCMP procedure.Modules
Course Overview and Logistics
2
Videos
- Welcome to the Course
- Practicing in the Course
2
Readings
- Learner Prerequisites
- Using Forums and Getting Help
Access SAS Software and Set Up Data for the Course (REQUIRED)
2
Readings
- Access SAS Software for this Course
- Set Up Data for This Course
DATA Step Review
1
Assignment
- Activity 1.01
3
Videos
- DATA Step Processing
- Processing a Data Set
- Demo: Reviewing DATA Step Syntax and Processing
Module Overview
1
Videos
- Overview
Using a Variety of Advanced Functions
6
Assignment
- Activity 2.01
- Activity 2.02
- Activity 2.03
- Activity 2.04
- Practice Level 1: Using the LAG Function
- Practice Level 2: Using the COUNT and FINDW Functions
8
Videos
- Using Functions in SAS
- Using the LAG Function
- Demo: Retrieving Previous Values with the LAG Function
- Calculating a Moving Average
- Best Practice for Calculating a Moving Average
- Using COUNT Functions
- Using FIND Functions
- Demo: Counting and Finding Words with Character Functions
Performing Pattern Matching with Perl Regular Expressions
5
Assignment
- Question 2.05
- Activity 2.06
- Activity 2.07
- Practice Level 1: Using the PRXMATCH and PRXCHANGE Functions
- Practice Level 2: Using the PRXCHANGE Function with Capture Buffers
7
Videos
- What are Perl Regular Expressions?
- What are Metacharacters?
- PRXPARSE and PRXMATCH Functions
- Demo: Validating Data with the PRXMATCH Function
- PRXCHANGE Function
- Capture Buffers
- Demo: Standardizing Data with the PRXCHANGE Function
1
Readings
- Metacharacter Examples
Module Review
1
Assignment
- Using Advanced Functions
Module Overview
1
Videos
- Overview
Defining and Referencing One-Dimensional Arrays
2
Assignment
- Activity 3.01
- Activity 3.02
4
Videos
- Processing Repetitive Code
- Using an Array
- Referencing an Array in a DO Loop
- Unknown Number of Array Elements
Doing More with One-Dimensional Arrays
4
Assignment
- Activity 3.03
- Question 3.04
- Practice Level 1: Using One-Dimensional Arrays on Numeric Data
- Practice Level 2: Using One-Dimensional Arrays on Character Data
7
Videos
- Creating Numeric Columns with an Array
- Specifying Lower and Upper Bounds
- Demo: Processing One-Dimensional Arrays: Part 1
- Rotating Data
- Specifying Initial Values for Array Elements
- Creating Character Columns with an Array
- Demo: Processing One-Dimensional Arrays: Part 2
Defining and Referencing Two-Dimensional Arrays
4
Assignment
- Question 3.05
- Activity 3.06
- Practice Level 1: Using a Two-Dimensional Array Based on Initial Values
- Practice Level 2: Using a Two-Dimensional Array Based on Loading a Table
6
Videos
- Two-Dimensional Arrays
- Performing a Table Lookup
- Demo: Processing Two-Dimensional Arrays: Part 1
- Specifying Initial Values for Two-Dimensional Array Elements
- Loading a Two-Dimensional Array from a Table
- Demo: Processing Two-Dimensional Arrays: Part 2
1
Readings
- Array Advantages and Disadvantages
Module Review
1
Assignment
- Defining and Processing Arrays
Module Overview
1
Videos
- Overview
Declaring Hash Objects
1
Assignment
- Activity 4.01
4
Videos
- Performing a Table Lookup: Example 1
- What is a Hash Object?
- Hash Object Process: Example 1
- Declaring a Hash Object
1
Readings
- Specifying the DATASET Argument
Defining Hash Objects
1
Assignment
- Activity 4.02
3
Videos
- Using Hash Object Methods
- Demo: Declaring and Defining a Hash Object
- Performing a Table Lookup: Example 2
1
Readings
- Using Multiple Method Statements
Finding Key Values in a Hash Object
2
Assignment
- Practice Level 1: Performing a Table Lookup Using One Key
- Practice Level 2: Performing a Table Lookup Using Three Keys
3
Videos
- FIND Method
- KEY Arguments
- Demo: Performing a Table Lookup with the FIND Method
Writing a Hash Object to a Table
3
Assignment
- Activity 4.03
- Practice Level 1: Creating a Sorted Table from a Hash Object
- Practice Level 2: Eliminating a PROC SORT step by Creating a Sorted Table from a Hash Object
4
Videos
- Adding Data to a Hash Object
- Saving a Hash Object
- Demo: Creating a Table with the ADD and OUTPUT Methods
- Unique and Duplicate Key Components
Using Hash Iterator Objects
2
Assignment
- Practice Level 1: Reading Data in Forward and Reverse Direction
- Practice Level 2: Reading Data in Forward and Reverse Directions
4
Videos
- What is a Hash Iterator Object?
- Creating the Hash Object and Hash Iterator Object
- Hash Iterator Object Methods
- Demo: Reading Data in Forward and Reverse Direction
1
Readings
- Hash Object Advantages and Disadvantages
Module Review
1
Assignment
- Defining and Processing Hash Objects
Module Overview
1
Videos
- Overview
Creating Picture Formats with the FORMAT Procedure
5
Assignment
- Question 5.01
- Activity 5.02
- Question 5.03
- Practice Level 1: Specifying a Template Based on Date Directives
- Practice Level 2: Specifying a Template Based on Digit Selectors
6
Videos
- Creating Custom Formats
- Custom Date and Datetime Formats
- Demo: Specifying a Template for Datetime Values
- Custom Numeric Formats
- Custom Large Number Format
- Demo: Specifying a Template for Large Numbers
Creating Functions with the FCMP Procedure
3
Assignment
- Activity 5.04
- Practice Level 1: Creating a Custom Function That Returns a Numeric Value
- Practice Level 2: Creating a Custom Function That Returns a Character Value
5
Videos
- Creating and Using a Custom Function
- Demo: Creating Functions Containing One Argument
- Passing and Returning Values
- Demo: Creating Functions Containing Multiple Arguments
- Creating a Custom Call Routine
1
Readings
- Advantages to Custom Functions and Call Routines
Module Review
1
Assignment
- Using Utility Procedures
Certification Practice Exam
1
External Tool
- SAS Certification Practice Exam: SAS 9.4 Advanced Programming Performance-Based Exam
Auto Summary
Discover advanced techniques in data manipulation with "Advanced SAS Programming Techniques" by Coursera. This professional-level course dives into the DATA step, covering functions like LAG, FINDC, and COUNT, PRX pattern matching, and advanced array processing. Learn to sort data and perform table lookups using hash objects, create numeric templates, and custom functions with the FORMAT and FCMP procedures. Ideal for seasoned data scientists, this 1080-minute course offers flexible subscription options: Starter and Professional.

Michele Ensor