Statistical Analysis System (SAS) Course Content:
Chapter 1 What Is SAS?
o Introduction
o Getting Data into SAS
o A Sample SAS Program
o SAS Names
o SAS Data Sets and SAS Data Types
o The SAS Display Manager and SAS Enterprise Guide
Chapter 2 Writing Your First SAS Program
o A Simple Program to Read Raw Data and Produce a Report
o Enhancing the Program
o More on Comment Statements
o How SAS Works (a Look Inside the “Black Box”)
Chapter 3 Reading Raw Data from External Files
o Introduction
o Reading Data Values Separated by Blanks
o Specifying Missing Values with List Input
o Reading Data Values Separated by Commas (CSV Files)
o Using an Alternative Method to Specify an External File Contents
o Reading Data Values Separated by Delimiters Other Than Blanks or Commas
o Placing Data Lines Directly in Your Program (the DATALINES Statement)
o Specifying INFILE Options with the DATALINES Statement
o Reading Raw Data from Fixed Columns—Method 1: Column Input
o Reading Raw Data from Fixed Columns—Method 2: Formatted Input
o Using a FORMAT Statement in a DATA Step versus in a Procedure
o Using In formats with List Input
o Supplying an INFORMAT Statement with List Input
o Using List Input with Embedded Delimiters
Chapter 4 Creating Permanent SAS Data Sets
o Introduction
o SAS Libraries—The LIBNAME Statement
o Why Create Permanent SAS Data Sets?
o Examining the Descriptor Portion of a SAS Data Set Using PROC CONTENTS
o Listing All the SAS Data Sets in a SAS Library Using PROC CONTENTS
o Viewing the Descriptor Portion of a SAS Data Set Using the SAS Explorer
o Viewing the Data Portion of a SAS Data Set Using PROC PRINT
o Viewing the Data Portion of a SAS Data Set Using the SAS VIEWTABLE Window
o Using a SAS Data Set as Input to a DATA Step
o DATA _NULL_: A Data Set That Isn’t
Chapter 5 Subsetting and Combining SAS Data Sets
o Introduction
o Subsetting a SAS Data Set
o Creating More Than One Subset Data Set in One DATA Step
o Adding Observations to a SAS Data Set
o Interleaving Data Sets
o Combining Detail and Summary Data
o Merging Two Data Sets
o Omitting the BY Statement in a Merge
o Controlling Observations in a Merged Data Set
o More Uses for IN= Variables
o When Does a DATA Step End?
o Merging Two Data Sets with Different BY Variable Names
o Merging Two Data Sets with Different BY Variable Data Types
o One-to-One, One-to-Many, and Many-to-Many Merges
o Updating a Master File from a Transaction File
Chapter 6 Creating Formats and Labels
o Adding Labels to Your Variables
o Using Formats to Enhance Your Output
o Regrouping Values Using Formats
o More on Format Ranges
o Storing Your Formats in a Format Library
o Permanent Data Set Attributes
o Accessing a Permanent SAS Data Set with User-Defined Formats
o Displaying Your Format Definitions
Chapter 7 Reading and Writing Data from an Excel Spreadsheet
o Introduction
o Using the Import Wizard to Convert a Spreadsheet to a SAS Data Set
o Creating an Excel Spreadsheet from a SAS Data Set
o Using an Engine to Read an Excel Spreadsheet
o Using the SAS Output Delivery System to Convert a SAS Data
o Set to an Excel Spreadsheet
Chapter 8 Performing Conditional Processing
o Introduction
o The IF and ELSE IF Statements
o The Sub setting IF Statement
o The IN Operator
o Using a SELECT Statement for Logical Tests
o Using Boolean Logic (AND, OR, and NOT Operators)
o A Caution When Using Multiple OR Operators
o The WHERE Statement
o Some Useful WERE Operators
Chapter 9 Performing Iterative Processing: Looping
o Introduction
o DO Groups
o The Sum Statement
o The Iterative DO Loop
o Other Forms of an Iterative DO Loop
o DO WHILE and DO UNTIL Statements
o A Caution When Using DO UNTIL Statements
o LEAVE and CONTINUE Statements
Chapter 10 Working with Dates
o Introduction
o How SAS Stores Dates
o Reading Date Values from Raw Data
o Computing the Number of Years between Two Dates
o Demonstrating a Date Constant
o Computing the Current Date
o Extracting the Day of the Week, Day of the Month, Month, and Year from a SAS Date
o Creating a SAS Date from Month, Day, and Year Values
o Substituting the 15th of the Month when the Day Value Is Missing
o Using Date Interval Functions
Chapter 11 Working with Numeric Functions
o Introduction
o Functions That Round and Truncate Numeric Values
o Functions That Work with Missing Values
o Setting Character and Numeric Values to Missing
o Descriptive Statistics Functions
o Computing Sums within an Observation
o Mathematical Functions
o Computing Some Useful Constants
o Generating Random Numbers
o Special Functions
o Functions That Return Values from Previous Observations
Chapter 12 Working with Character Functions
o Introduction
o Determining the Length of a Character Value
o Changing the Case of Characters
o Removing Characters from Strings
o Joining Two or More Strings Together
o Removing Leading or Trailing Blanks
o Using the COMPRESS Function to Remove Characters from a String
o Searching for Characters
o Searching for Individual Characters
o Searching for Words in a String
o Searching for Character Classes
o Using the NOT Functions for Data Cleaning
o Describing a Real Blockbuster Data Cleaning Function
o Extracting Part of a String
o Dividing Strings into Words
o Comparing Strings
o Performing a Fuzzy Match
o Substituting Characters or Words
Chapter 13 Working with Arrays
o Introduction
o Setting Values of 999 to a SAS Missing Value for Several Numeric Variables
o Setting Values of NA and? to a Missing Character Value
o Converting All Character Values to Lowercase
o Using an Array to Create New Variables
o Changing the Array Bounds
o Temporary Arrays
o Loading the Initial Values of a Temporary Array from a Raw Data File
o Using a Multidimensional Array for Table Lookup
Chapter 14 Displaying Your Data
o Introduction
o The Basics
o Changing the Appearance of Your Listing
o Changing the Appearance of Values
o Controlling the Observations That Appear in Your Listing
o Adding Additional Titles and Footnotes to Your Listing
o Changing the Order of Your Listing
o Sorting by More Than One Variable
o Labelling Your Column Headings
o Adding Subtotals and Totals to Your Listing
o Making Your Listing Easier to Read
o Adding the Number of Observations to Your Listing
o Double-Spacing Your Listing
o Listing the First n Observations of Your Data Set
Chapter 15 Creating Customized Reports
o Using PROC REPORT
o Selecting Variables to Include in Your Report
o Comparing Detail and Summary Reports
o Producing a Summary Report
o Demonstrating the FLOW Option of PROC REPORT
o Using Two Grouping Variables
o Changing the Order of Variables in the COLUMN Statement
o Changing the Order of Rows in a Report
o Applying the ORDER Usage to Two Variables
o Creating a Multi-Column Report
o Producing Report Breaks
o Using a Nonprinting Variable to Order a Report
o Computing a New Variable with PROC REPORT
o Computing a Character Variable in a COMPUTE Block
o Creating an ACROSS Variable with PROC REPORT
o Modifying the Column Label for an ACROSS Variable
o Using an ACROSS Usage to Display Statistics
Chapter 16 Summarizing Your Data
o Introduction
o PROC MEANS—Starting from the Beginning
o Adding a BY Statement to PROC MEANS
o Using a CLASS Statement with PROC MEANS
o Applying a Format to a CLASS Variable
o Deciding between a BY Statement and a CLASS Statement
o Creating Summary Data Sets Using PROC MEANS
o Outputting Other Descriptive Statistics with PROC MEANS
o Asking SAS to Name the Variables in the Output Data Set
o Outputting a Summary Data Set: Including a BY Statement
o Outputting a Summary Data Set: Including a CLASS Statement
o Using Two CLASS Variables with PROC MEANS
o Selecting Different Statistics for Each Variable
Chapter 17 Counting Frequencies
o Introduction
o Counting Frequencies
o Selecting Variables for PROC FREQ
o Using Formats to Label the Output
o Using Formats to Group Values
o Problems Grouping Values with PROC FREQ
o Displaying Missing Values in the Frequency Table
o Changing the Order of Values in PROC FREQ
o Producing Two-Way Tables
Chapter 18 Creating Tabular Reports
o Introduction
o A Simple PROC TABULATE Table
o Describing the Three PROC TABULATE Operators
o Using the Keyword ALL
o Producing Descriptive Statistics
o Combining CLASS and Analysis Variables in a Table
o Customizing Your Table
o Demonstrating a More Complex Table
o Computing Row and Column Percentages
o Displaying Percentages in a Two-Dimensional Table
o Computing Column Percentages
o Computing Percentages on Numeric Variables
o Understanding How Missing Values Affect PROC TABULATE Output
Chapter 19 Introducing the Output Delivery System
o Introduction
o Sending SAS Output to an HTML File
o Creating a Table of Contents
o Selecting a Different HTML Style
o Choosing Other ODS Destinations
o Selecting or Excluding Portions of SAS Output
o Sending Output to a SAS Data Set
Chapter 20 Generating High-Quality Graphics
o Introduction
o Some Basic Concepts
o Producing Simple Bar Charts Using PROC GCHART
o Creating Pie Charts
o Creating Bar Charts for a Continuous Variable
o Creating Charts with Values Representing Categories
o Creating Bar Charts Representing Sums
o Creating Bar Charts Representing Means
o Adding Another Variable to the Chart
o Producing Scatter Plots
o Connecting Points
o Connecting Points with a Smooth Line
Chapter 21 Using Advanced INPUT Techniques
o Introduction
o Handling Missing Values at the End of a Line
o Reading Short Data Lines
o Reading External Files with Lines Longer Than Characters
o Detecting the End of the File
o Reading a Portion of a Raw Data File
o Reading Data from Multiple Files
o Reading Data from Multiple Files Using a FILENAME Statement
o Reading External Filenames from a Data File
o Reading Multiple Lines of Data to Form One Observation
o Reading Data Conditionally (the Single Trailing @ Sign)
o More Examples of the Single Trailing @ Sign
o Creating Multiple Observations from One Line of Input
o Using Variable and In format Lists
o Using Relative Column Pointers to Read a Complex Data Structure Efficiently
Chapter 22 Using Advanced Features of User-Defined Formats and in formats
o Introduction
o Using Formats to Recode Variables
o Using Formats with a PUT Function to Create New Variables
o Creating User-Defined in formats
o Reading Character and Numeric Data in One Step
o Using Formats (and in formats) to Perform Table Lookup
o Using a SAS Data Set to Create a Format
o Updating and Maintaining Your Formats
o Using Formats within Formats
o Using Multilabel Formats
o Using the INPUTN Function to Perform a More Complicated Table Lookup
Chapter 23 Restructuring SAS Data Sets
o Introduction
o Converting a Data Set with One Observation per Subject to a Data Set with Several
o Observations per Subject: Using a DATA Step
o Converting a Data Set with Several Observations per Subject to a Data Set with One
o Observation per Subject: Using a DATA Step
o Converting a Data Set with One Observation per Subject to a Data Set with Several
o Observations per Subject: Using PROC TRANSPOSE
o Converting a Data Set with Several Observations per Subject to a Data Set with One
o Observation per Subject: Using PROC TRANSPOSE
Chapter 24 Introducing the SAS Macro Language
o Introduction
o Macro Variables: What Are They?
o Some Built-In Macro Variables
o Assigning Values to Macro Variables with a %LET Statement
o Demonstrating a Simple Macro
o Macro parameters
o Another Example of Using a Macro Variable as a Prefix
o Using a Macro Variable to Transfer a Value between DATA Steps
Chapter 25 Introducing the Structured Query Language
o Introduction
o Some Basics
o Joining Two Tables (Merge)
o Left, Right, and Full Joins
o Concatenating Data Sets
o Using Summary Functions
o Demonstrating an ORDER Clause
o An Example of Fuzzy Matching
What You Will Learn in SAS Course?
How SAS works
o Reading raw data from external files
o Creating permanent SAS data sets
o Creating formats & labels
o Reading writing data from an Excel spreadsheet
o Performing conditional processing
o Performing iterative processing
o Working with numeric & character functions & arrays
o Summarizing your data
o Creating tabular reports
o Generating high quality graphics & restricting SAS datasets etc