SAS FINANCIAL MANAGEMENT Training Overview
INTRODUCTION TO SAS
• INTRODUCTION
• NEED FOR SAS
• WHO USES SAS
• WHAT IS SAS?
• OVERVIEW OF BASE SAS SOFTWARE
• DATA MANAGEMENT FACILITY
• STRUCTURE OF SAS DATASET
• SAS PROGRAM
• PROGRAMMING LANGUAGE
• ELEMENTS OF THE SAS LANGUAGE
• RULES FOR SAS STATEMENTS
• RULES FOR MOST SAS NAMES
• SPECIAL RULES FOR VARIABLE NAMES
• TYPES OF VARIABLES
• DATA ANALYSIS AND REPORTING UTILITIES
• TRADITIONAL OUTPUT
• WAYS TO RUN SAS PROGRAMS
• SAS WINDOWING ENVIRONMENT
• NONINTERACTIVE MODE
• BATCH MODE
• INTERACTIVE LINE MODE
• RUNNING PROGRAMS IN THE SAS WINDOWING ENVIRONMENT
HOW SAS WORKS
• WRITING YOUR FIRST SAS PROGRAM
• A SIMPLE PROGRAM TO READ RAW DATA AND PRODUCE A REPORT
• ENHANCING THE PROGRAM
• MORE ON COMMENT STATEMENTS
• INTERNAL PROCESSING IN SAS
• HOW SAS WORKS
• THE COMPILATION PHASE
• THE EXECUTION PHASE
• PROCESSING A DATA STEP: A WALKTHROUGH
• CREATING THE INPUT BUFFER AND THE PROGRAM DATA VECTOR
• WRITING AN OBSERVATION TO THE SAS DATA SET
• FOUR TYPES OF SAS LIBRARIES
• SAS LIBRARIES
• WORK LIBRARY
• SASHELP LIBRARY
• SASUSER LIBRARY
READING RAW DATA INTO SAS
• WHAT IS RAW DATA
• DEFINITIONS
• DATA VALUES
• NUMERIC VALUE
• CHARACTER VALUE
• STANDARD DATA
• NONSTANDARD DATA
• NUMERIC DATA
• CHARACTER DATA
• CHOOSING AN INPUT STYLE
• LIST INPUT
• MODIFIED LIST INPUT
• COLUMN INPUT
• FORMATTED INPUT
• NAMED INPUT
• INSTREAM DATA
• CREATING MULTIPLE RECORDS FROM SINGLE INPUT ROW
• READING DATA FROM EXTERNAL FILES
• READING BLANK SEPARATED VALUES (LIST OR FREE FORM DATA):
• READING RAW DATA SEPARATED BY COMMAS (.CSV FILES):
• READING IN RAW DATA SEPARATED BY TABS (.TXT FILES):
• USING INFORMATS WITH LIST INPUT
• SUPPLYING AN INFORMAT STATEMENT WITH LIST INPUT
• USING LIST INPUT WITH EMBEDDED DELIMITERS
• READING RAW DATA THAT ARE ALIGNED IN COLUMNS:
• METHOD 1: COLUMN INPUT
• METHOD 2: FORMATTED INPUT
• USING MORE THAN ONE INPUT STATEMENT: THE SINGLE TRAILING @
• READING COLUMN DATA THAT IS ON MORE THAN ONE LINE
• MIXED-STYLE INPUT:
• INFILE OPTIONS FOR SPECIAL SITUATIONS
• FLOWOVER
• MISSOVER
• TRUNCOVER
• PAD
• USING LRECL TO READ VERY LONG LINES OF RAW DATA
• CHECKING YOUR DATA AFTER IT HAS BEEN READ INTO SAS
READING DATA FROM A DATASET
• INTRODUCTION
• SET STATEMENT OVERVIEW
• AUTOMATIC VARIABLES IN SAS
• INTERLEAVE MULTIPLE SAS DATA SETS
• COMBINE MULTIPLE SAS DATA SETS
• CREATING & MODIFYING VARIABLES
• CREATING MULTIPLE DATASETS IN A SINGLE DATA-STEP
• SUBSETTING OBSERVATIONS
• CONDITIONAL SAS STATEMENTS
• LOGICAL AND SPECIAL OPERATORS
• THE SAS SUPERVISOR AND THE SET STATEMENT
• EFFICIENCY AND THE SET STATEMENT
• KNOW YOUR DATA
• SET STATEMENT DATA SET OPTIONS
• DROP AND KEEP OPTIONS
• RENAME OPTION
• FIRSTOBS AND OBS OPTIONS
• IN OPTION –
• WHERE OPTION –
• OTHER SET STATEMENT OPTIONS
• END OPTION
• KEY OPTION
• NOBS OPTION
• POINT OPTION
• DO LOOPS AND THE SET STATEMENT
• INTRODUCTION TO RETAIN STATEMENT
• CARRY OVER VALUES FROM ONE OBSERVATION TO ANOTHER
• COMPARE VALUES ACROSS OBSERVATIONS
• ASSIGN INITIAL VALUES
• DETERMINING COLUMN ORDER IN OUTPUT DATASET
• SAS SYSTEM OPTIONS
READING DATA FROM A DATA
• INPUT SAS DATA SET FOR EXAMPLE
• SELECTING OBSERVATIONS FOR A NEW SAS DATA SET
• DELETING OBSERVATIONS BASED ON A CONDITION
• ACCEPTING OBSERVATIONS BASED ON A CONDITION
• COMPARING THE DELETE AND SUBSETTING IF STATEMENTS
• METHODS OF CREATING NEW DATA SETS WITH A SUBSET
• SUBSETTING RECORDS FROM AN EXTERNAL FILE WITH A SUBSETTING IF STATEMENT
• SUBSETTING OBSERVATIONS IN A DATA STEP WITH A WHERE STATEMENT
• SUBSETTING OBSERVATIONS IN A PROC STEP WITH A WHERE STATEMENT
• SUBSETTING OBSERVATIONS IN PROC SQL
• DIFFERENCE BETWEEN IF AND WHERE
SAS INFORMATS AND FORMATS
• OVERVIEW
• USING SAS INFORMATS
• INPUT STATEMENT
• INPUT FUNCTION
• INPUTN AND INPUTC FUNCTIONS
• ATTRIB AND INFORMAT STATEMENTS
• USING SAS FORMATS
• FORMAT STATEMENT IN PROCEDURES
• PUT STATEMENT
• PUT FUNCTION
• PUTN AND PUTC FUNCTIONS
• BESTw. Format
• ADDITIONAL COMMENTS
SAS FUNCTIONS
• CATEGORIES OF FUNCTIONS
• SAS CHARACTER FUNCTIONS
• FUNCTIONS THAT CHANGE THE CASE OF CHARACTERS
• UPCASE
• LOWCASE
• PROPCASE
• FUNCTIONS THAT REMOVE CHARACTERS FROM STRINGS
• FUNCTION: COMPBL
• FUNCTION: COMPRESS
• FUNCTIONS THAT SEARCH FOR CHARACTERS
• FUNCTION: ANYALNUM
• FUNCTION: ANYALPHA
• FUNCTION: ANYDIGIT
• FUNCTION: ANYPUNCT
• FUNCTION: ANYSPACE
• FUNCTION: NOTALNUM
• FUNCTION: NOTALPHA
• FUNCTION: NOTDIGIT
• FUNCTION: NOTUPPER
• FUNCTIONS THAT SEARCH STRINGS
• FIND AND FINDC
• INDEX, INDEXC, AND INDEXW
• FUNCTIONS TO VERIFY DATA
• FUNCTION VERIFY
• FUNCTIONS THAT EXTRACT PARTS OF STRINGS
• FUNCTION: SUBSTR (ON THE LEFT-HAND SIDE OF THE EQUAL SIGN)
• FUNCTION: SUBSTRN
• FUNCTIONS THAT JOIN TWO OR MORE STRINGS TOGETHER
• FUNCTION: CAT
• FUNCTION: CATS
• FUNCTION: CATT
• FUNCTION: CATX
• FUNCTIONS THAT REMOVE BLANKS FROM STRINGS
• FUNCTION: LEFT
• FUNCTION: RIGHT
• FUNCTION: TRIM
• FUNCTION: TRIMN
• FUNCTION: STRIP
• FUNCTIONS THAT COMPARE STRINGS
• FUNCTION: COMPARE
• FUNCTIONS THAT DIVIDE STRINGS INTO “WORDS”
• FUNCTION: SCAN
• FUNCTION: SCANQ
• FUNCTIONS THAT SUBSTITUTE LETTERS OR WORDS IN STRINGS
• FUNCTION: TRANSLATE
• FUNCTION: TRANWRD
• FUNCTIONS THAT COMPUTE THE LENGTH OF STRINGS
• FUNCTION: LENGTH
• FUNCTION: LENGTHC
• FUNCTION: LENGTHM
• FUNCTION: LENGTHN
• FUNCTIONS THAT COUNT THE NUMBER OF LETTERS OR SUBSTRINGS IN A STRING
• FUNCTION: COUNT
• FUNCTION: COUNTC
• MISCELLANEOUS STRING FUNCTIONS
• FUNCTION: MISSING
• FUNCTION: REPEAT
• FUNCTION: REVERSE
• SAS DATE AND TIME FUNCTIONS
• INTRODUCTION
• WHAT IS A SAS DATE AND TIME LITERAL?
• DATE AND TIME FUNCTIONS
• FUNCTINS TO CREATE DATE AND TIME VALUES
• FUNCTIONS TO TAKIE DATETIME VALUES APART
• FUNCTIONS TO GET QUARTER ,YEAR OR DAY OF THE DATE
• FUNCTIONS THAT WORK WITH INTERVALS
• USING FORMATS FOR DATE AND TIME
• SYSTEM OPTIONS FORDATE AND TIME
AN INTRODUCTION TO ARRAYS AND ARRAY PROCESSINGWHY DO WE NEED ARRAYS?
• BASIC ARRAY CONCEPTS
• ARRAY STATEMENT
• ARRAY REFERENCES
• VARIABLE NAME ARRAY REFERENCE
• USING ARRAY INDEXES
• ONE DIMENSION ARRAYS
• MULTI-DIMENSION ARRAYS
• TEMPORARY ARRAYS
• SORTING ARRAYS
• Determining Array Bounds: LBOUND and HBOUND Functions
• WHEN TO USE ARRAYS
• COMMON ERRORS AND MISUNDERSTANDINGS
• INVALID INDEX RANGE
• FUNCTION NAME AS AN ARRAY NAME
• ARRAY REFERENCED IN MULTIPLE DATA STEPS, BUT DEFINED IN ONLY ONE
BY – GROUP PROCESSING
• DEFINITIONS FOR BY-GROUP PROCESSING
• BY-GROUP PROCESSING
• BY VALUE
• BY GROUP
• FIRST.VARIABLE AND LAST.VARIABLE
• MODIFYING SAS DATA SETS: EXAMPLES.
• INVOKING BY-GROUP PROCESSING
• PREPROCESSING INPUT DATA FOR BY-GROUP PROCESSING
• SORTING OBSERVATIONS FOR BY-GROUP PROCESSING
• INDEXING FOR BY-GROUP PROCESSING
• HOW THE DATA STEP IDENTIFIES BY GROUPS
• PROCESSING OBSERVATIONS IN A BY GROUP
• HOW SAS DETERMINES FIRST.VARIABLE AND LAST.VARIABLE
• PROCESSING BY-GROUPS IN THE DATA STEP
• OVERVIEW
• PROCESSING BY-GROUPS CONDITIONALLY
• DATA NOT IN ALPHABETIC OR NUMERIC ORDER
• DATA GROUPED BY FORMATTED VALUES
OVERVIEW OF METHODS FOR COMBINING SAS DATA SETS
• DEFINITIONS
• CONCATENATING
• INTERLEAVING
• ONE-TO- ONE READING OR ONE-TO- ONE MERGING
• MATCH-MERGING
• UPDATING
• MODIFYING
• DEFINITIONS FOR READING, COMBINING, AND MODIFYING SAS DATA SETS
• READING A SAS DATA SET
• COMBINING SAS DATA SETS
• MODIFYING SAS DATA SETS
• OVERVIEW OF TOOLS
• READING SAS DATA SETS
• READING A SINGLE SAS DATA SET
• READING FROM MULTIPLE SAS DATA SETS
• COMBINING SAS DATA SETS: BASIC CONCEPTS
• ONE-TO- ONE
• ONE-TO- MANY AND MANY-TO- ONE
• MANY-TO- MANY
• ACCESS METHODS: SEQUENTIAL VERSUS DIRECT
• SEQUENTIAL ACCESS
• DIRECT ACCESS
• ONE-TO- ONE READING
• DATA STEP PROCESSING DURING A ONE-TO- ONE READING
• ONE-TO- ONE MERGING
• MATCH-MERGING
• UPDATING WITH THE UPDATE AND THE MODIFY STATEMENTS :
• DEFINITIONS
• SYNTAX OF THE UPDATE STATEMENT
• SYNTAX OF THE MODIFY STATEMENT –
• UPDATING WITH NONMATCHED OBSERVATIONS, MISSING VALUES, AND NEW VARIABLES –
• USING AN INDEX WITH THE MODIFY STATEMENT
SAS PROCEDURES
• INTRODUCTION
• THE ANATOMY OF A PROC
• THE PROC STATEMENT
• TITLE AND FOOTNOTE STATEMENTS
• BY STATEMENT
• LABEL STATEMENT
• FORMAT STATEMENT
• RUN OR QUIT STATEMENT
• DESCRIPTION OF DATA USED IN REPORTS
• SAS REPORTING PROCEDURES
• PROCS FOR ALL THAT DETAIL
• USING PROC PRINT
• USING PROC SQL
• PROC REPORT
• PROCS THAT SUMMARIZE
• USING PROC CHART
• USING PROC FREQ
• USING PROC MEANS
• USING PROC UNIVARIATE
• INTRODUCTION TO PROC TABULATE
• DATA MANIPULATION AND MANAGEMENT PROCEDURE
• PROC SORT
• PROC DATASETS
• PROC FORMAT
• PROC CONTENTS
• OTHER IMPORTANT PROCS
• PROC TRANSPOSE
• DEFINITIONS
• PROC PRINTTO
• COMPARE PROCEDURE
• PROC APPEND
• HOW TO IMPORT AN EXCEL FILE INTO SAS
INTRODUCTION TO PROC SQL
• INTRODUCTION
• WHY LEARN PROC SQL?
• SELECT STATEMENT
• THE SELECT STATEMENT SYNTAX
• A SIMPLE PROC SQL
• A COMPLEX PROC SQL
• LIMITING INFORMATION ON THE SELECT
• CREATING NEW VARIABLES
• THE CALCULATED OPTION ON THE SELECT
• USING LABELS AND FORMATS
• THE CASE EXPRESSION ON THE SELECT
• ADDITIONAL SELECT STATEMENT CLAUSES
• REMERGING
• REMERGING FOR TOTALS
• CALCULATING PERCENTAGE
• SORTING THE DATA IN PROC SQL
• SORT ON NEW COLUMN
• SUBSETTING USING THE WHERE
• INCORRECT WHERE CLAUSE
• WHERE ON COMPUTED COLUMN
• SELECTION ON GROUP COLUMN
• USE HAVING CLAUSE
• CREATING NEW TABLES
• JOINING DATASETS USING PROC SQL
• INNER JOIN
• JOINING THREE OR MORE TABLES
• OUTER JOINS
• INCLUDING NONMATCHING ROWS WITH THE RIGHT OUTER JOIN
• SELECTING ALL ROWS WITH THE FULL OUTER JOIN
• CONCATENATING QUERY RESULTS
SAS FINANCE PROCEDURES
• PROC LOAN
• PROC TIMESERIES
• PROC FORECASTING
• PROC UPLOAD
• PROC DOWNLOAD
• PROC EXPAND
• PROC UCM
• PROC CLUSTER
• PROC DISTANCE
• PROC TREE
AN INTRODUCTION TO SAS MACROS
• INTRODUCTION
• SAS MACRO OVERVIEW
• TRADITIONAL SAS PROGRAMMING
• THE SAS MACRO LANGUAGE
• MACRO LANGUAGE COMPONENTS
• MACRO VARIABLES
• MACRO STATEMENTS
• MACRO PROCESSOR FLOW
• AUTOMATIC MACRO VARIABLES
• MACRO DEBUGGING OPTIONS
• WHAT IS A MACRO?
• DEFINING AND USING MACROS
• POSITIONAL MACRO PARAMETERS
• KEYWORD MACRO PARAMETERS
• CONDITIONAL MACRO COMPILATION
• THE %DO STATEMENT
• SAS DATA STEP INTERFACES
THE OUTPUT DELIVERY SYSTEM (ODS)
• INTRODUCTION
• CREATING VARIOUS TYPES OF REPORTS LISTING OUTPUT
• OTHER DESTINATIONS
• HTML
• PDF AND POSTSCRIPT
• RTF FILES
• MICROSOFT EXCEL
• ADDING STYLE TO YOUR REPORTS
• LOCATE EXISTING STYLES
• ODS STYLE=OPTION
• CUSTOMIZE YOUR REPORTS
• ODS SELECT; AND ODS EXCLUDE;
• OTHER CUSTOMIZATIONS
• ODS PROCLABEL= ;
• ODS PROCTITLE; AND ODS NOPROCTITLE;
• ADVANCED TECHNIQUES
• ODS DOCUMENT
• PROC TEMPLATE
INTRODUCTION TO DIAGNOSING AND AVOIDING ERRORS
• INTRODUCTION
• UNDERSTANDING HOW THE SAS SUPERVISOR CHECKS A JOB
• UNDERSTANDING HOW SAS PROCESSES ERRORS
• DISTINGUISHING TYPES OF ERRORS.SAS RECOGNIZES FOUR KINDS OF ERRORS:
• SYNTAX ERRORS
• EXECUTION-TIME ERRORS
• DATA ERRORS
• SEMANTIC ERRORS
• DIAGNOSING ERRORS
• DIAGNOSING SYNTAX ERRORS
• DIAGNOSING DATA ERRORS
• USING A QUALITY CONTROL CHECKLIST