About this Course
25,601 recent views

100% online

Start instantly and learn at your own schedule.

Flexible deadlines

Reset deadlines in accordance to your schedule.

Intermediate Level

Approx. 24 hours to complete

Suggested: 15 hours/week...

English

Subtitles: English

100% online

Start instantly and learn at your own schedule.

Flexible deadlines

Reset deadlines in accordance to your schedule.

Intermediate Level

Approx. 24 hours to complete

Suggested: 15 hours/week...

English

Subtitles: English

Syllabus - What you will learn from this course

Week
1
1 hour to complete

Course Overview and Data Setup

In this module you get an overview of what you learn in this course and your set up for software and the data you use for activities and practices in the course....
2 videos (Total 1 min), 4 readings
2 videos
Practicing in This Course35s
4 readings
Learner Prerequisites10m
Choosing and Setting Up SAS Software for this Course10m
Follow These Instructions to Set Up Data for This Course (REQUIRED)30m
Using Forums and Getting Help10m
3 hours to complete

Controlling DATA Step Processing

In this module, we dig deeper into the DATA step. You learn how the DATA step processes data behind the scenes. Then you use this knowledge to control when and where the DATA step outputs rows to new tables....
14 videos (Total 24 min), 1 reading, 9 quizzes
14 videos
DATA Step Review30s
DATA Step Processing55s
DATA Step Processing: Compilation3m
DATA Step Processing: Execution1m
Demo: DATA Step Processing in Action6m
Viewing Execution in the Log1m
Controlling DATA Step Processing1m
Implicit and Explicit Output1m
Sending Output to Multiple Tables26s
Demo: Directing Row Output3m
Controlling Column Output30s
Demo: Directing Column Output3m
Columns in the PDV36s
1 reading
Syntax Review10m
9 practice exercises
Activity 1.0110m
Activity 1.0210m
Practice: Using PUTLOG Statements to Examine Execution Steps20m
Activity 1.0310m
Activity 1.0410m
Question 1.055m
Level 1 Practice: Conditionally Creating Multiple Output Tables20m
Level 2 Practice: Conditionally Creating Columns and Output Tables20m
Controlling DATA Step Processing30m
Week
2
3 hours to complete

Summarizing Data

In this module, you learn new syntax that enables you to alter the default behavior of the DATA step to solve a problem. First you learn to create an accumulating column, or in other words generate a running total. Then you learn to process data in groups, so you can perform an action when each group begins or ends. ...
10 videos (Total 19 min), 1 reading, 11 quizzes
10 videos
Demo: Creating an Accumulating Column3m
Retaining Values in the PDV1m
Using the Sum Statement58s
Answering Questions about Groups42s
Processing Sorted Data in Groups1m
Demo: Identifying the First and Last Row in Each Group4m
Subsetting Rows in the Execution Phase2m
Demo: Creating an Accumulating Column within Groups2m
Using Multiple BY Columns1m
1 reading
Syntax Review10m
11 practice exercises
Activity 2.0110m
Question 2.025m
Level 1 Practice: Producing a Running Total20m
Level 2 Practice: Producing Multiple Totals20m
Activity 2.0310m
Activity 2.0410m
Activity 2.0510m
Question 2.065m
Level 1 Practice: Generating an Accumulating Column within Groups20m
Level 2 Practice: Generating an Accumulating Column within Multiple Groups20m
Summarizing Data30m
Week
3
5 hours to complete

Manipulating Data with Functions

In this module, you learn to use some new functions that enable you to manipulate numeric, date, and character values. In addition, you learn to use functions that change a column from one data type to another....
24 videos (Total 40 min), 5 readings, 18 quizzes
24 videos
Review of Functions44s
Specifying Columns Lists1m
Using a CALL Routine to Modify Data1m
Using Numeric Functions1m
Demo: Using Numeric Functions2m
SAS Date, Datetime, and Time Values53s
Extracting Data from a Datetime Value30s
Calculating Date Intervals2m
Shifting Date Values50s
Demo: Shifting Date Values Based on an Interval3m
Useful Character Functions53s
Extracting Words from a String58s
Demo: Using Character Functions to Extract Words from a String3m
Searching for Character Strings51s
Replacing Character Strings27s
Handling Column Type35s
Converting Column Type1m
Converting Character Values to Numeric Values1m
Using a Generic Informat to Read Dates1m
Converting the Type of an Existing Column1m
Converting Numeric Values to Character Values1m
Demo: Using the INPUT Function to Convert Column Types7m
Demo: Using the PUT Function to Convert Column Types3m
5 readings
Using Numeric Functions to Change Precision10m
Removing Characters from a String10m
Identifying Character Positions10m
Building Character Strings10m
Syntax Review10m
18 practice exercises
Activity 3.0110m
Activity 3.0210m
Activity 3.0310m
Activity 3.0410m
Question 3.055m
Level 1 Practice: Using the LARGEST and ROUND Functions20m
Level 2 Practice: Working with Date/Time Values20m
Activity 3.0610m
Activity 3.0710m
Activity 3.0810m
Activity 3.0910m
Level 1 Practice: Using the SCAN and PROPCASE Functions20m
Level 2 Practice: Searching for Character Strings20m
Activity 3.1010m
Activity 3.1110m
Question 3.125m
Activity 3.1310m
Manipulating Data with Functions30m
Week
4
3 hours to complete

Creating and Using Custom Formats

In this module, you learn to create and use custom formats to enhance the way your data is displayed in a table or report....
8 videos (Total 16 min), 1 reading, 10 quizzes
8 videos
Formatting Data Values29s
Creating and Applying a Custom Format2m
Using Ranges1m
Demo: Creating and Using Custom Formats3m
Reading a Table of Values for a Format2m
Demo: Creating Custom Formats from Tables4m
Storing Custom Formats1m
1 reading
Syntax Review10m
10 practice exercises
Activity 4.0110m
Activity 4.0210m
Activity 4.0310m
Level 1 Practice: Creating Custom Formats Based on Single Values20m
Level 2 Practice: Creating Custom Formats Based on a Range of Values20m
Activity 4.0410m
Activity 4.0510m
Level 1 Practice: Creating a Custom Format from a Table20m
Level 2 Practice: Using Conditional Processing to Create a Format from a Table20m
Creating and Using Custom Formats30m
Week
5
3 hours to complete

Combining Tables

In this module, we take a comprehensive look at combining tables by using the DATA step. You learn to concatenate tables, merge tables, and identify matching and nonmatching rows....
14 videos (Total 28 min), 1 reading, 10 quizzes
14 videos
Concatenating Tables with Matching Columns1m
Demo: Concatenating Tables3m
Handling Column Attributes45s
What is a Merge?1m
Processing a One-to-One Merge2m
Processing a One-To-Many Merge1m
Demo: Merging Tables3m
Merging Tables with Nonmatching Rows2m
Identifying Matches and Nonmatches1m
Demo: Merging Tables with Nonmatching Rows6m
Merging Tables with Matching Column Names1m
Merging Tables without a Common Column1m
DATA Step Merge and PROC SQL Join38s
1 reading
Syntax Review10m
10 practice exercises
Activity 5.0110m
Level 1 Practice: Concatenating Like-Structured Tables20m
Level 2 Practice: Concatenating Unlike-Structured Tables20m
Question 5.025m
Activity 5.0310m
Question 5.045m
Activity 5.0510m
Level 1 Practice: Performing a One-to-Many Merge20m
Level 2 Practice: Writing Matches and Nonmatches to Separate Tables20m
Combining Tables30m
Week
6
3 hours to complete

Processing Repetitive Code

In this module, you learn to save time by taking advantage of iterative processing with DO loops. First you learn to create an iterative DO Loop, then you learn to create conditional DO loops....
11 videos (Total 25 min), 1 reading, 7 quizzes
11 videos
Processing Repetitive Code50s
Iterative DO Loops2m
Demo: Executing an Iterative DO Loop2m
Output Inside and Outside the DO Loop2m
Demo: Using Iterative DO Loops5m
Conditional DO Loops1m
Checking the Condition1m
Demo: Using Conditional DO Loops4m
Combining Iterative and Conditional DO Loops1m
Demo: Combining Iterative and Conditional DO Loops3m
1 reading
Syntax Review10m
7 practice exercises
Activity 6.0110m
Level 1 Practice: Using Nested Iterative DO Loops (DATA Step with No SET Statement)20m
Level 2 Practice: Using an Iterative DO Loop (DATA Step with a SET Statement)20m
Activity 6.0210m
Level 1 Practice: Using a Conditional DO Loop20m
Level 2 Practice: Using an Iterative and Conditional DO Loop20m
Processing Repetitive Code30m
Week
7
3 hours to complete

Restructuring Tables

In this module, you learn techniques that can be used to transpose or restructure a table. First you learn to restructure data with the DATA step. Then you learn to restructure data by using the TRANSPOSE procedure....
10 videos (Total 12 min), 1 reading, 9 quizzes
10 videos
Understanding Table Structure46s
Restructuring Data36s
Demo: Creating a Narrow Table with the DATA Step3m
Creating a Wide Table with the DATA Step44s
The Transpose Procedure24s
Transposing Values within Groups48s
Demo: Creating a Wide Table with PROC TRANSPOSE4m
Creating a Narrow Table with PROC TRANSPOSE27s
Changing Column Names59s
1 reading
Syntax Review10m
9 practice exercises
Question 7.015m
Activity 7.0210m
Level 1 Practice: Restructuring a Table Using the DATA Step: Wide to Narrow20m
Level 2 Practice: Restructuring a Table Using the DATA Step: Narrow to Wide20m
Activity 7.0310m
Activity 7.0410m
Level 1 Practice: Restructuring a Table Using PROC TRANSPOSE: Wide to Narrow20m
Level 2 Practice: Restructuring a Table Using PROC TRANSPOSE: Narrow to Wide20m
Restructuring Tables30m
4.8
12 ReviewsChevron Right

Top Reviews

By VVApr 25th 2019

I love the way the course content builds on itself in such a systematic way, and welcome the variety of exercises and practices.

By MMMar 16th 2019

e\n\nx\n\nc\n\ne\n\nl\n\nl\n\ne\n\nn\n\nt\n\nh\n\na\n\nn\n\nd\n\ns\n\no\n\nn\n\ne\n\nx\n\np\n\ne\n\nr\n\nI\n\ne\n\nn\n\nc\n\ne

Instructor

Avatar

Stacey Syphus

Senior Manager
Education

About SAS

Through innovative software and services, SAS empowers and inspires customers around the world to transform data into intelligence. SAS is a trusted analytics powerhouse for organizations seeking immediate value from their data. A deep bench of analytics solutions and broad industry knowledge keep our customers coming back and feeling confident. With SAS®, you can discover insights from your data and make sense of it all. Identify what’s working and fix what isn’t. Make more intelligent decisions. And drive relevant change....

About the SAS® Programming Specialization

When you complete the SAS® Base Programming courses, you will have demonstrated skills in manipulating and transforming data, combining SAS data sets, creating basic detail and summary reports using SAS procedures and identifying and correcting data, syntax and programming logic errors. These skills prepare you for the SAS® Base Programmer certification exam....
SAS® Programming

Frequently Asked Questions

  • Once you enroll for a Certificate, you’ll have access to all videos, quizzes, and programming assignments (if applicable). Peer review assignments can only be submitted and reviewed once your session has begun. If you choose to explore the course without purchasing, you may not be able to access certain assignments.

  • When you enroll in the course, you get access to all of the courses in the Specialization, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile. If you only want to read and view the course content, you can audit the course for free.

More questions? Visit the Learner Help Center.