### Getting started with SAS

**Goal:** In this module, you will learn to use the SAS Environment and program flow in SAS with specifications of Data and Proc steps. Also, you will learn to install SAS University Edition on your system.

**Objective:**

At the end of this module, you should be able to:

• Install SAS University Edition

• Express SAS as a language

• Describe the rules for the definition of SAS names

• Define the different datatypes, datasets in SAS

• Explain the significance of Data/Procedural step

• Run a simple SAS program

• Exercise better control over Data Step Programming using PDV.

**Topics:**

• Use Cases of SAS implementation

• Installing SAS University Edition

• Explore SAS GUI, SAS window and its contents

• Rules for definition of a SAS name

• Different Datatypes in SAS

• Use of Formats and Informats in SAS

• Illustration of SAS Datasets

• The Data step and procedural step

• Creating an Instream SAS Dataset

• Basic Procedural statements

• Assessing Input Buffer and Program Data Vector (PDV)

Hands On:

• Navigating the SAS windows environment

• Nuts and bolts of SAS programming steps

• Converting data as per required format

• Creating a dataset using CARDS

• Generating the output using PROC PRINT

### Processing and Integrating with the Data Step

**Goal: **This module introduces you to import datasets and control the import of datasets into SAS and ultimately concatenating them.

**Objective:** At the end of this module, you should be able to:

• Bring in your external data into SAS and modifying it.

• Describe and subset permanent datasets.

• Modify/Delete existing columns

• Concatenate Datasets

**Topics:**

• Import of Data in SAS

• Manipulating influx of datasets into SAS

• Creating a new variable

• Working with Temporary and Permanent Datasets

• Set and Merge Statements

**Hands On:**

• Demonstrating import of external data within SAS using INFILE

• Demonstrating import of external data within SAS using PROC IMPORT

• Creating Permanent Datasets

• Performing operations with KEEP, DROP and RENAME and LABEL options

• Constructing a new variable

• Creating integrated datasets using SET/MERGE

### Customizing Datasets

**Goal: **This module introduces the concept of looping and its implementation in the SAS programming language. You will explore arrays and functions to simplify complications in SAS programming.

**Objective:** At the end of this module, you should be able to:

• Demonstrate dependent and independent looping

• Master data step programming with SAS functions

• Simplify processing with SAS Arrays

**Topics:**

• Conditional& Iterative Processing

• SAS Arrays

• Useful SAS Functions

PUT/INPUT Functions

Date/Time Functions

Numeric Functions

Character Functions

**Hands On:**

• Use of DO, DO WHILE, DO UNTIL, IF ELSE, ELSE, ELSE IF

• Demonstrate the use of arrays in SAS

• Operation with INPUT/PUT functions

• Writing a Program with date/time functions

• Performing programming with Numeric functions

• Executing program with Character Functions

### Advanced SAS Procedures

**Goal:** You will learn the analysis of your statistical data with advanced SAS procedures

**Objective:** At the end of this module, you should be able to:

• Explain Statistical Procedures

• Define priorities to your statistical data

• Discuss statistics associated with a variable

• Express correlation between two or more variables

**Topics:**

• Proc Dataset

• Proc Format

• Proc Sort

• Proc Means

• Proc Freq

• Proc Surveyselect

• Proc Transpose

• Proc Summary

• Proc Rank

• Proc Corr

• Proc Univariate

**Hands On:**

• Obtaining statistical means of variables

• Checking the degree of dependence within different variables

• Generating ranks for statistical data

• Performing re-structuring of data

• Conducting sampling: Random and Stratified

### Advanced Statistical Proficiency with SAS

**Goal:** You will learn to model estimate and classify events based on the values of dependent variables. You will be taught to perform different types of clustering methodologies to bunch your observations.

**Objective: **At the end of this module, you should be able to:

• Define clustering and its types

• Explain clustering algorithms

• Nest data in different clusters

• Analyse the regression between two or multiple variables

• Model and estimate an event based on Logits

**Topics:**

• Introduction to Clustering

• Hierarchical Clustering

• Non-Hierarchical Clustering (K means Clustering)

• Simple and Multiple Linear Regression

• Logistic Regression

**Hands On:**

• Demonstrate the use of PROC CLUSTER

• Writing a SAS advanced program with PROC FASTCLUS

• Performing operations on regression with PROC REG

• Demonstrate modelling using PROC LOGISTIC

### Optimization of variables and SAS ODS

**Goal: **You will learn to reduce the degree of complexity of a problem by developing& resolving optimization models and ultimately routing detailed presentation output from SAS in desired formats and destination.

**Objective:** At the end of this module, you should be able to:

• Discuss data optimization

• Acquire optimized models for complex problems

• Resolve optimization models

• Describe the Output Delivery System in SAS

• Explain the use of ODS statement for creation of different file types

**Topics:**

• What is Data Optimization?

• Realizing Optimization Models

• Using Proc Optmodel

• Solving the Rosenbrock Problem

• Introduction to ODS

• Benefits of using ODS

• Generating rtf file

• Generating pdf file

• Generating html file

• Generating doc file

**Hands On:**

• Writing a program with PROC OPTMODEL

• Solving the optimization model using SOLVE

• Extracting optimized outputs

• Routing quality presentation files

• Create html files

• Create rtf file

• Create pdf and doc files

### PROC SQL

**Goal:** You will learn to invoke SQL in SAS.

**Objective: **At the end of this module, you should be able to:

• Write SQL code using various styles of the SELECT statement

• Use CASE/WHEN clauses for conditionally processing the data

• Systemize appearance of observations

• Join data from two or more data sets

**Topics:**

• Creating new tables

• The SELECT statement

• Sorting Data

• The CASE expression

• Other SELECT statement clauses

• JOINS and UNIONS

**Hands On:**

• Demonstrating the SQL Procedure

• Writing the SELECT clause

• Application of WHERE clause

• Merging Datasets

• Using ORDER BY clause

### Using SAS Macros

**Goal:** You will explore how to automate a complex repeated process in SAS with the use of Macros.

**Objective:** At the end of this module, you should be able to:

• Define Macro Concept

• Automate a task that you perform repeatedly

• Explain Macro Step

• Express Macro step as a combination of different variables

**Topics:**

• Introduction to Macros

• Benefits of using SAS Macros

• Macro Code Constituents

• Macro Variables

• Macro Step

• Positional Parameters to Macros

**Hands On:**

• Demonstrate the use of Macro variables in SAS

• Writing a Macro code to simplify a program

• Demonstrate Macro step programming

• Performing Macro coding by passing parameters