• For Individuals
  • For Businesses
  • For Universities
  • For Governments
Coursera
  • Coursera Plus
  • Log In
  • Join for Free
    Coursera
    SAS
    Advanced SAS Programming Techniques
    • About
    • Outcomes
    • Modules
    • Testimonials
    • Reviews
    • Recommendations
    1. Browse
    2. Data Science
    3. Data Analysis
    SAS

    Advanced SAS Programming Techniques

    This course is part of SAS Advanced Programmer Professional Certificate

    Michele Ensor

    Instructor: Michele Ensor

    4,370 already enrolled

    Included with Coursera Plus

    •Learn more
    5 modules
    Gain insight into a topic and learn the fundamentals.
    4.8

    (94 reviews)

    Intermediate level
    Some related experience required
    Flexible schedule
    Approx. 17 hours
    Learn at your own pace
    Earn a Certificate
    With paid plans

    5 modules
    Gain insight into a topic and learn the fundamentals.
    4.8

    (94 reviews)

    Intermediate level
    Some related experience required
    Flexible schedule
    Approx. 17 hours
    Learn at your own pace
    Earn a Certificate
    With paid plans
    • About
    • Outcomes
    • Modules
    • Testimonials
    • Reviews
    • Recommendations

    Skills you'll gain

    • Data Transformation
    • Data Analysis
    • Perl (Programming Language)
    • Statistical Programming
    • Data Processing
    • Data Manipulation
    • SAS (Software)
    • Data Structures

    Details to know

    Shareable certificate

    Add to your LinkedIn profile

    Assessments

    43 assignments

    Taught in English

    See how employees at top companies are mastering in-demand skills

    Learn more about Coursera for Business
     logos of Petrobras, TATA, Danone, Capgemini, P&G and L'Oreal

    Build your Data Analysis expertise

    This course is part of the SAS Advanced Programmer Professional Certificate
    When you enroll in this course, you'll also be enrolled in this Professional Certificate.
    • Learn new concepts from industry experts
    • Gain a foundational understanding of a subject or tool
    • Develop job-relevant skills with hands-on projects
    • Earn a shareable career certificate from SAS
    Coursera Career Certificate

    Earn a career certificate

    Add this credential to your LinkedIn profile, resume, or CV

    Share it on social media and in your performance review

    Coursera Career Certificate

    There are 5 modules in this course

    In this course, you learn advanced techniques within the DATA step and procedures to manipulate data.

    “By the end of this course, a learner will be able to…” ● Use additional functions (LAG, FINDC/FINDW, and COUNT/COUNTC/COUNTW). ● Perform pattern matching using PRX functions. ● Process repetitive code, rotate data, and perform table lookups using arrays. ● Perform table lookups and sort data using hash and hash iterator objects. ● Create numeric templates using the FORMAT procedure. ● Create custom functions using the FCMP procedure.

    In this module, you'll set up software and data for this course. Then you'll review the concepts of SAS DATA step processing and how to process data sets.

    What's included

    5 videos4 readings1 assignment

    5 videos•Total 15 minutes
    • Welcome to the Course•0 minutes•Preview module
    • Practicing in the Course•2 minutes
    • DATA Step Processing•3 minutes
    • Processing a Data Set•2 minutes
    • Demo: Reviewing DATA Step Syntax and Processing•6 minutes
    4 readings•Total 60 minutes
    • Learner Prerequisites•10 minutes
    • Using Forums and Getting Help•10 minutes
    • Access SAS Software for this Course•10 minutes
    • Set Up Data for This Course •30 minutes
    1 assignment•Total 10 minutes
    • Activity 1.01•10 minutes

    In this module, you'll use advanced functions to compare data between multiple rows in a SAS table, find and count substrings within a column, and clean and standardize data. You'll also explore CALL routines, Perl regular expressions, and how to use advanced functions to modify and analyze storm, weather, and population data.

    What's included

    16 videos1 reading12 assignments

    16 videos•Total 36 minutes
    • Overview•0 minutes•Preview module
    • Using Functions in SAS•2 minutes
    • Using the LAG Function•2 minutes
    • Demo: Retrieving Previous Values with the LAG Function•2 minutes
    • Calculating a Moving Average•0 minutes
    • Best Practice for Calculating a Moving Average•0 minutes
    • Using COUNT Functions•2 minutes
    • Using FIND Functions•1 minute
    • Demo: Counting and Finding Words with Character Functions•3 minutes
    • What are Perl Regular Expressions?•1 minute
    • What are Metacharacters?•3 minutes
    • PRXPARSE and PRXMATCH Functions•3 minutes
    • Demo: Validating Data with the PRXMATCH Function•4 minutes
    • PRXCHANGE Function•2 minutes
    • Capture Buffers•2 minutes
    • Demo: Standardizing Data with the PRXCHANGE Function•3 minutes
    1 reading•Total 10 minutes
    • Metacharacter Examples•10 minutes
    12 assignments•Total 195 minutes
    • Activity 2.01•10 minutes
    • Activity 2.02•10 minutes
    • Activity 2.03•10 minutes
    • Activity 2.04•10 minutes
    • Practice Level 1: Using the LAG Function•20 minutes
    • Practice Level 2: Using the COUNT and FINDW Functions•20 minutes
    • Question 2.05•5 minutes
    • Activity 2.06•10 minutes
    • Activity 2.07•10 minutes
    • Practice Level 1: Using the PRXMATCH and PRXCHANGE Functions•20 minutes
    • Practice Level 2: Using the PRXCHANGE Function with Capture Buffers•20 minutes
    • Using Advanced Functions•50 minutes

    In this module, you'll learn how to use arrays to simplify your code. You'll use arrays to process repetitive code, rotate data, and perform table lookups.

    What's included

    18 videos1 reading11 assignments

    18 videos•Total 34 minutes
    • Overview•0 minutes•Preview module
    • Processing Repetitive Code•1 minute
    • Using an Array•2 minutes
    • Referencing an Array in a DO Loop•1 minute
    • Unknown Number of Array Elements•0 minutes
    • Creating Numeric Columns with an Array•1 minute
    • Specifying Lower and Upper Bounds•1 minute
    • Demo: Processing One-Dimensional Arrays: Part 1•3 minutes
    • Rotating Data•1 minute
    • Specifying Initial Values for Array Elements•1 minute
    • Creating Character Columns with an Array•0 minutes
    • Demo: Processing One-Dimensional Arrays: Part 2•2 minutes
    • Two-Dimensional Arrays•0 minutes
    • Performing a Table Lookup•4 minutes
    • Demo: Processing Two-Dimensional Arrays: Part 1•3 minutes
    • Specifying Initial Values for Two-Dimensional Array Elements•1 minute
    • Loading a Two-Dimensional Array from a Table•1 minute
    • Demo: Processing Two-Dimensional Arrays: Part 2•2 minutes
    1 reading•Total 10 minutes
    • Array Advantages and Disadvantages•10 minutes
    11 assignments•Total 185 minutes
    • Activity 3.01•10 minutes
    • Activity 3.02•10 minutes
    • Activity 3.03•10 minutes
    • Question 3.04•10 minutes
    • Practice Level 1: Using One-Dimensional Arrays on Numeric Data•20 minutes
    • Practice Level 2: Using One-Dimensional Arrays on Character Data•20 minutes
    • Question 3.05•5 minutes
    • Activity 3.06•10 minutes
    • Practice Level 1: Using a Two-Dimensional Array Based on Initial Values•20 minutes
    • Practice Level 2: Using a Two-Dimensional Array Based on Loading a Table•20 minutes
    • Defining and Processing Arrays•50 minutes

    In this module, you'll learn how to declare a hash object, instantiate or create an instance of the object, and initialize its lookup keys and data. You'll use the hash object to store and retrieve data, create an output table from the data in the hash object, and create a hash iterator object to process the data in a particular order.

    What's included

    19 videos3 readings10 assignments

    19 videos•Total 29 minutes
    • Overview•0 minutes•Preview module
    • Performing a Table Lookup: Example 1•1 minute
    • What is a Hash Object?•1 minute
    • Hash Object Process: Example 1•1 minute
    • Declaring a Hash Object•1 minute
    • Using Hash Object Methods•2 minutes
    • Demo: Declaring and Defining a Hash Object•2 minutes
    • Performing a Table Lookup: Example 2•0 minutes
    • FIND Method•1 minute
    • KEY Arguments•0 minutes
    • Demo: Performing a Table Lookup with the FIND Method•3 minutes
    • Adding Data to a Hash Object•1 minute
    • Saving a Hash Object•1 minute
    • Demo: Creating a Table with the ADD and OUTPUT Methods•3 minutes
    • Unique and Duplicate Key Components•0 minutes
    • What is a Hash Iterator Object?•1 minute
    • Creating the Hash Object and Hash Iterator Object•1 minute
    • Hash Iterator Object Methods•0 minutes
    • Demo: Reading Data in Forward and Reverse Direction•2 minutes
    3 readings•Total 30 minutes
    • Specifying the DATASET Argument•10 minutes
    • Using Multiple Method Statements•10 minutes
    • Hash Object Advantages and Disadvantages•10 minutes
    10 assignments•Total 200 minutes
    • Activity 4.01•10 minutes
    • Activity 4.02•10 minutes
    • Practice Level 1: Performing a Table Lookup Using One Key•20 minutes
    • Practice Level 2: Performing a Table Lookup Using Three Keys•20 minutes
    • Activity 4.03•10 minutes
    • Practice Level 1: Creating a Sorted Table from a Hash Object•20 minutes
    • Practice Level 2: Eliminating a PROC SORT step by Creating a Sorted Table from a Hash Object•20 minutes
    • Practice Level 1: Reading Data in Forward and Reverse Direction•20 minutes
    • Practice Level 2: Reading Data in Forward and Reverse Directions•20 minutes
    • Defining and Processing Hash Objects•50 minutes

    In this module, you'll learn how to use PROC FORMAT's PICTURE statement to create a custom template to display large numbers, dates, and times. You'll also use PROC FCMP, the function compiler procedure, to create custom functions and CALL routines.

    What's included

    12 videos1 reading9 assignments1 app item

    12 videos•Total 30 minutes
    • Overview•0 minutes•Preview module
    • Creating Custom Formats•1 minute
    • Custom Date and Datetime Formats•4 minutes
    • Demo: Specifying a Template for Datetime Values•1 minute
    • Custom Numeric Formats•6 minutes
    • Custom Large Number Format•1 minute
    • Demo: Specifying a Template for Large Numbers•3 minutes
    • Creating and Using a Custom Function•3 minutes
    • Demo: Creating Functions Containing One Argument•2 minutes
    • Passing and Returning Values•0 minutes
    • Demo: Creating Functions Containing Multiple Arguments•3 minutes
    • Creating a Custom Call Routine•1 minute
    1 reading•Total 10 minutes
    • Advantages to Custom Functions and Call Routines•10 minutes
    9 assignments•Total 160 minutes
    • Question 5.01•5 minutes
    • Activity 5.02•10 minutes
    • Question 5.03•5 minutes
    • Practice Level 1: Specifying a Template Based on Date Directives•20 minutes
    • Practice Level 2: Specifying a Template Based on Digit Selectors•20 minutes
    • Activity 5.04•10 minutes
    • Practice Level 1: Creating a Custom Function That Returns a Numeric Value•20 minutes
    • Practice Level 2: Creating a Custom Function That Returns a Character Value•20 minutes
    • Using Utility Procedures•50 minutes
    1 app item•Total 60 minutes
    • SAS Certification Practice Exam: SAS 9.4 Advanced Programming Performance-Based Exam•60 minutes

    Instructor

    Instructor ratings

    Instructor ratings

    We asked all learners to give feedback on our instructors based on the quality of their teaching style.

    4.8 (27 ratings)
    Michele Ensor
    Michele Ensor
    SAS
    1 Course•4,370 learners

    Offered by

    SAS

    Offered by

    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.

    Why people choose Coursera for their career

    Felipe M.
    Learner since 2018
    "To be able to take courses at my own pace and rhythm has been an amazing experience. I can learn whenever it fits my schedule and mood."
    Jennifer J.
    Learner since 2020
    "I directly applied the concepts and skills I learned from my courses to an exciting new project at work."
    Larry W.
    Learner since 2021
    "When I need courses on topics that my university doesn't offer, Coursera is one of the best places to go."
    Chaitanya A.
    "Learning isn't just about being better at your job: it's so much more than that. Coursera allows me to learn without limits."

    Learner reviews

    4.8

    94 reviews

    • 5 stars

      86.17%

    • 4 stars

      10.63%

    • 3 stars

      2.12%

    • 2 stars

      1.06%

    • 1 star

      0%

    Showing 3 of 94

    R
    RC
    5

    Reviewed on Jun 23, 2021

    G​reat course! If you can follow this course, you will be no problem on SAS advanced certificate! The contents are much more indepth than the exam requirement!

    S
    SW
    5

    Reviewed on Oct 18, 2020

    Passed SAS adv exam after taking this course. It's very useful.

    J
    JS
    4

    Reviewed on Feb 16, 2021

    I want more! all of these SAS courses are great from format, pace, delivery! I'm truly enjoying the learning experience.

    View more reviews

    Career resources

    What Is R Programming? Use Cases and FAQ

    January 13, 2025

    Article · 5 min read

    What Is a Top IDE for R Programming?

    December 9, 2024

    Article

    Python or R for Data Analysis: Which Should You Learn?

    February 4, 2025

    Article · 5 min read

    MATLAB vs. R: What's the Difference?

    May 12, 2025

    Article

    Coursera Plus

    Unlock access to 10,000+ courses with a subscription

    Explore roles and skills, learn more effectively with Coursera Coach, and earn recognized credentials

    Learn more

    Advance your career with an online degree

    Earn a degree from world-class universities - 100% online

    Explore degrees

    Join over 3,400 global companies that choose Coursera for Business

    Upskill your employees to excel in the digital economy

    Learn more

    Frequently asked questions

    Access to lectures and assignments depends on your type of enrollment. If you take a course in audit mode, you will be able to see most course materials for free. To access graded assignments and to earn a Certificate, you will need to purchase the Certificate experience, during or after your audit. If you don't see the audit option:

    • The course may not offer an audit option. You can try a Free Trial instead, or apply for Financial Aid.

    • The course may offer 'Full Course, No Certificate' instead. This option lets you see all course materials, submit required assessments, and get a final grade. This also means that you will not be able to purchase a Certificate experience.

    When you enroll in the course, you get access to all of the courses in the Certificate, 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.

    If you subscribed, you get a 7-day free trial during which you can cancel at no penalty. After that, we don’t give refunds, but you can cancel your subscription at any time. See our full refund policyOpens in a new tab.

    More questions

    Visit the learner help center

    Financial aid available,

    Coursera Footer

    Technical Skills

    • ChatGPT
    • Coding
    • Computer Science
    • Cybersecurity
    • DevOps
    • Ethical Hacking
    • Generative AI
    • Java Programming
    • Python
    • Web Development

    Analytical Skills

    • Artificial Intelligence
    • Big Data
    • Business Analysis
    • Data Analytics
    • Data Science
    • Financial Modeling
    • Machine Learning
    • Microsoft Excel
    • Microsoft Power BI
    • SQL

    Business Skills

    • Accounting
    • Digital Marketing
    • E-commerce
    • Finance
    • Google
    • Graphic Design
    • IBM
    • Marketing
    • Project Management
    • Social Media Marketing

    Career Resources

    • Essential IT Certifications
    • High-Income Skills to Learn
    • How to Get a PMP Certification
    • How to Learn Artificial Intelligence
    • Popular Cybersecurity Certifications
    • Popular Data Analytics Certifications
    • What Does a Data Analyst Do?
    • Career Development Resources
    • Career Aptitude Test
    • Share your Coursera Learning Story

    Coursera

    • About
    • What We Offer
    • Leadership
    • Careers
    • Catalog
    • Coursera Plus
    • Professional Certificates
    • MasterTrack® Certificates
    • Degrees
    • For Enterprise
    • For Government
    • For Campus
    • Become a Partner
    • Social Impact
    • Free Courses
    • ECTS Credit Recommendations

    Community

    • Learners
    • Partners
    • Beta Testers
    • Blog
    • The Coursera Podcast
    • Tech Blog
    • Teaching Center

    More

    • Press
    • Investors
    • Terms
    • Privacy
    • Help
    • Accessibility
    • Contact
    • Articles
    • Directory
    • Affiliates
    • Modern Slavery Statement
    • Do Not Sell/Share
    Learn Anywhere
    Download on the App Store
    Get it on Google Play
    Logo of Certified B Corporation
    © 2025 Coursera Inc. All rights reserved.
    • Coursera Facebook
    • Coursera Linkedin
    • Coursera Twitter
    • Coursera YouTube
    • Coursera Instagram
    • Coursera TikTok
    Coursera

    Welcome back

    ​
    Your password is hidden
    ​

    or

    New to Coursera?


    Having trouble logging in? Learner help center

    This site is protected by reCAPTCHA Enterprise and the Google Privacy Policy and Terms of Service apply.