SAS Programming Online Course
About the Course
SAS programming continues to be the language of choice for many leading enterprises. As of 2018, 92% of Fortune 100 companies used SAS, reflecting its widespread adoption across key industries such as banking, finance, insurance, healthcare, pharmaceuticals, and automotive.
This course is ideal for individuals pursuing careers in large organizations or preparing for SAS Certified Specialist credentials. Whether you're aiming to break into data-driven roles or enhance your analytics skill set, this course provides a strong foundation in SAS programming.
Course Curriculum
Introduction to the Course
- SAS Studio/SAS OnDemand for Academics – Register, Upload, Run Code
- WPS – How to Find, Install, Register for, Use, and Upload Datasets
- Common Problems with Install/Upload (Watch for Best Course Experience!)
Importing
- Import .txt
- Import .csv
- Import .XLSX
SAS Syntax, Data Step Versus Proc Step, SAS Compared to R/Python
- Data Step Versus Proc Step
- SAS Syntax
- Manually Creating Data with R, Python, and SAS
Working with Data
- Data Set Options
- What If Your Data Is Separated by a Dot or Something Else? (Delimiters)
- Reading Data Instream in Data Step (Typing Data Right into Coding Area)
- Reading DATES in Data
- Creating Variables/Calculations
- More on Creating New Variables
- Automatic Variables
- Filtering Observations (So Only Some Data Shows Up)
- Intuition for If-Then/Else and Do, Do-While, Do-Until
- If-Then Conditional Logic
- DO Iterative Loop and Variations (DO WHILE, DO Until)
- More on DO Group Processing (Without Index/Counter Variable)
- More on the WHERE Expression/Statement
- Sorting Observations (PROC SORT and BY Statements)
- Merging Two Datasets
- Using SET Statement to Merge
- Data Reduction and Cleaning Your Data
- LENGTH Statement
- Creating a Counting (Enumeration) Variable
Back to Importing
- Importing SPSS File with SAS Language
Input Types and Informats + User-Defined Formats
- List Input
- Column Input
- Formatted Input and Informats
- User-Defined Formats
Arrays
- Arrays 1 (Recoding Variables)
- Arrays 2 (Constructing New Variables)
SAS Functions
- Understanding SAS Functions
- RAND Function (Producing a Sample with Distribution of Your Choice)
- LENGTH, LENGTHN, LENGTHC Functions (Are You Working with a Large Dataset?)
- TRIM Function (Want to Get Rid of Trailing Blanks?)
- COMPRESS Function (Remove Characters from String, and All Types of Blanks)
- Input and Put Functions
- CATX Function
- SCAN Function
- Coalesce Function
- Verify Function
- Substr Function
Advanced Techniques – Flexibilities and Efficiency
- Flexible Programming 1 - Combining multiple raw data files vertically
Visual Representation of Data
- Scatter Plot
- Bar Graph
Statistical Analysis
- T-Test Independent Samples Overview (Example)
- Doing an Independent Samples T-Test Analysis
- Chi-Square Independence Overview (Example)
- Doing a Chi-Square (Independent Groups) Analysis
Statistical Analysis – Part 2 (Linear and Multiple Regression)
- Refresh Your Memory - Regression Edition
- Performing the Linear Regression
- Performing Multiple Regression
Case Studies
- Case Study (HealthCare Case Study) - Part 1
- Case Study (HealthCare Case Study) - Part 2
- Congrats on Finishing Part 1: Data Step
SQL Fundamentals
- SQL Syntax
- WHERE Clause
- SELECT Statement and Columns
- CASE Logic
- Summary Functions
SAS SQL and Joining
- How to Perform an Inner Join
- How to Join Three Tables
- How to Perform a Left/Right Join
- How to Perform a Full Join
Working with Tables Using SAS SQL
- How to Create a Table Using SAS SQL
- Altering Columns (Add, Modify, Delete, Add Values to Column)
- Inserting Rows with a Query and Set Statement
Practical Application of SAS SQL
- How to Compare Tables with SAS SQL
- Finding Duplicate Observations
- Customize the Way You Sort
- How to Update a Table Under Certain Conditions with SAS SQL
- Fundamentals of Utilizing SAS Indexes
- Intro to Indexes/Indices
- Should You Use an Index?
- Types of Indices
- Index Options
- Testing with Large Datasets
- Selecting Variable(s) for Your Index
- PROC Datasets and WHERE Expression
- BY Statement (Sorting Variables, While Exploiting Your Index)
- Handling Common Tasks with an Indexed Dataset
- Updating the Master Dataset with New Variables or Observations
Macro Facility Fundamentals
- Types of Macro Variables
- Don't Lose Track of Your Macro Variables
- Macro Variable Assignment Rules
- Masking Special Characters
- Macro Functions (%Index and %Upcase)
- Macro Functions 2 (%Scan)
- Creating a Macro Variable (Helps You Modify Data Easier)
- Macro Programs Introduction
- Creating a Macro Example 1 (Greater Flexibility and Useful for Repetitive Coding)
- Creating a Macro Example 2 (Unique Sales Reports for Different Days)
- Creating a Macro Example 3 (Calculating Average Sales for Multiple Years)
- Debugging Options
- Storing Macros (External)
- Brainstorming for Logistic Macro Case Study
- Logistic Macro, Case Study – Part 1
- Logistic Macro, Case Study – Part 2
Introduction to SAS Predictive Modeling Using Logistic Regression
- Business Applications of Predictive Modeling
- Analytics Challenges
- The Major Steps in Predictive Modeling
- Intuitive Understanding of Logistic Regression
SAS Model – Predictive Modeling, Understanding the Problem and the Data
- Problem Statement/Hypothesis Generation
- Data Audit
- Univariate Analysis
- Bivariate Analysis
- Important Housekeeping
SAS Predictive Modeling, Prepare the Input Variables
- Sources, Patterns, and Mechanisms of Missing Data
- Evaluating Missing Data Patterns with SAS
- 3 Phase Multiple Imputation Process Using SAS
- Considering the Output from PROC MI
- Oversampling and Adjusting for Oversampling
- Categorical Inputs
- Variable Clustering
- Multicollinearity
- Subset Selection
- Parameter Estimates
SAS Predictive Modeling, Evaluation Metrics
- ROC Curve
- Scoring Validation Dataset Using Code
- Decile Calibration Plot
- Feature Engineering