Booking options
£97.99
£97.99
On-Demand course
11 hours 29 minutes
All levels
This course is perfect for the beginner but also delves into building a SAS Model and intermediate topics. Learn SAS Data Step, SQL Step, Macros, SAS Model Building, Predictive Analytics, SAS and ML. If you are using SAS Enterprise Guide and want to learn how to code/program instead of using the point-and-click interface, this course is ideal!
SAS programming continues to be the language of choice for most enterprises/corporations. In 2018, 92% of Fortune 100 companies used SAS. It is the go-to for many industries, including banking/finance, insurance, healthcare, pharmaceutical, and automotive. The first part of the course utilizes the Data Step; the second part looks at SAS SQL, and the third part looks at Macro Programming/Programs. The author has added a section on SAS predictive modeling using logistic regression. Here, we will build a SAS Model. In other words, we will build a predictive model (also known as predictive analytics) while following critical principles to ensure we get things right. This course is also developed to help you become SAS Certified Specialist: Base Programming certified. By the end of this course, you will learn how to code in the SAS programming language, to help you start a career/gain employment, or move up at your current company. If you are studying SAS at a post-secondary institution, this course can not only help you with school projects but prepare you for a career after you complete your education. Disclaimer: This course uses a commercial license from WPS. Learning SAS programming means that you will be able to accomplish the same goal on any software that supports the SAS language. The author personally uses WPS. All the resource files are added to the GitHub repository at: https://github.com/PacktPublishing/SAS-Programming-Complete-Learn-SAS-and-Become-a-Data-Ninja
Discover the data step, the primary way to program in SAS
Learn about the proc step that is utilized for more particular tasks
Apply SAS SQL, the SAS interpretation of SQL
Look at the practical application of SAS SQL
Learn the fundamentals of Macro facility
Look at SAS predictive modeling and evaluation metrics
This course is designed for the users of the SAS Enterprise Guide, as being able to code inside of EG is the next natural step and skill to obtain. Individuals that are considering a career or want to gain employment with the biggest corporations/enterprises out there along with the ones looking to become SAS Certified Specialist: Base Programming will gain a lot from this course. The students new to SAS syntax and or looking for a refresher will learn and enjoy this course thoroughly.
No prior programming knowledge is required to take this course but only a stable internet connection.
The course is predominantly designed for beginners; it is comprehensive in nature and covers some advanced topics. The course uses a hands-on approach and hand-held examples. The lessons in this course are meant to be taken in order, as each lesson builds up on knowledge and may mention some important ideas/concepts. If you skip videos, it may appear that some aspects are not being explained.
Grow your skill by learning how to create a SAS model for advanced analytics * Obtain the skills needed to pass SAS Certified Specialist: Base Programming exam * Learn techniques to decrease the amount of code you have to type and learn to deal with big data
https://github.com/PacktPublishing/SAS-Programming-Complete-Learn-SAS-and-Become-a-Data-Ninja
Ermin Dedic started his studies by studying psychology for six years. He received his bachelor's degree from the University of Ottawa, Canada, and his master's degree from the University of Calgary, Canada. Ermin also spent two years in a master's program (school/child psychology) at the University of Calgary before voluntarily withdrawing, in part to focus more on his teaching. It was through academia that he was introduced to and fell in love with statistics and statistical programming with SAS. He is passionate about making education accessible and fun for students. Ermin believes that students learn better when they feel the passion that the instructor has for the content.
1. Introduction to the Course
1. SAS Studio/SAS OnDemand for Academics - Register, Upload, Run Code This video helps you with SAS Studio/SAS OnDemand for academics. You will register, upload, and run code using SAS studio. |
2. WPS - How to Find, Install, Register for, Use, and Upload Datasets This video talks in detail about WPS. You will know how to find, install, register for, use, and upload datasets using WPS. |
3. Common Problems with Install/Upload (Watch for Best Course Experience!) This video demonstrates the common problems with install/upload. Do Watch this video to understand how to gain or grasp the concepts for the best course experience. |
2. Importing
1. Import .txt In this video, you will learn how to import a .txt file to SAS. |
2. Import .csv This video explains how to import .csv files. You will learn how to import a .csv file to SAS. |
3. Import .XLSX This video demonstrates the importing of .XLSX files. Here, the author will give you a proc import SAS example. So far, you have seen how to use the data step to import datasets. In this video, you will utilize proc import to import a .xlsx file. |
3. SAS Syntax, Data Step Versus Proc Step, SAS Compared to R/Python
1. Data Step Versus Proc Step In this video, you will see the difference between data step and proc step. |
2. SAS Syntax The author will describe what rules to follow to make sure you can communicate with the compiler that makes sense of SAS code. |
3. Manually Creating Data with R, Python, and SAS The author manually creates data with R, Python, and SAS to give you an idea about similarities and differences between the three popular programming languages. |
4. Working with Data
1. Data Set Options Data set options can give you control over your dataset or dataset variables. You will look at data set options in this video. |
2. What If Your Data Is Separated by a Dot or Something Else? (Delimiters) What if your data file is not separated by a blank space? What if it is separated by a dot (.) or |? The author will explain SAS default delimiters and how to deal with such a problem. |
3. Reading Data Instream in Data Step (Typing Data Right into Coding Area) Sometimes you want to just type your data directly in the syntax. This is logical if you have very little data, and if there is no need to import a file to SAS. The author will show you how to do it. |
4. Reading DATES in Data SAS is not great at dealing with data that has dates, and by default, it does not present them properly; the author will show you what is required to deal with this. |
5. Creating Variables/Calculations Here, the author will show you how to create new variables with the current data that you have. Often, new variables utilize current variables, so calculations are required. |
6. More on Creating New Variables More on creating new variables, including the type of expressions that you can utilize. |
7. Automatic Variables Automatic variables do their work in the background, but they can be used explicitly as well to perform certain tasks. In this video, the author will look at the _Error_ and _N_ automatic variables. |
8. Filtering Observations (So Only Some Data Shows Up) Sometimes you only want a certain part of your dataset to show up. The author will show you how this is possible in SAS. If you are in the real estate business, maybe the boss will ask you to show him a list of only the homes that cost more than 250k. |
9. Intuition for If-Then/Else and Do, Do-While, Do-Until Before we start using decision and looping structures in actual SAS code, it is important to first get an intuitive sense of how these structures work. The author will use some diagrams to enhance learning. |
10. If-Then Conditional Logic If-then logic lets you subset data and group observations when the observations meet the outlined conditions. |
11. DO Iterative Loop and Variations (DO WHILE, DO Until) You might be more familiar with the for loop, but the DO loop is the same concept. |
12. More on DO Group Processing (Without Index/Counter Variable) There are four forms of Do Group processing, and three of the forms do not involve a counter/index variable. |
13. More on the WHERE Expression/Statement The author will discuss the WHERE expression in some detail. |
14. Sorting Observations (PROC SORT and BY Statements) The author will show you two new statements-proc sort and by statements. This will inform you how to sort your data. |
15. Merging Two Datasets The author will show you how you can merge data from two different .txt files. It is super simple to do in SAS. |
16. Using SET Statement to Merge Did you know that you can use the set statement to merge as well? |
17. Data Reduction and Cleaning Your Data First, the author will show you how to use the keep and drop statements in SAS. If you want to reduce your data by keeping or getting rid of certain variables, the author will take you step-by-step to show you how. Then he will show you the rename and label statements that help make your data "cleaner". This includes renaming your original variables and labelling those variables. |
18. LENGTH Statement You want to make sure to allocate the proper number of bytes for your variables, and in this video, the author will show you how! |
19. Creating a Counting (Enumeration) Variable Creating an enumeration or counting variable is common with survey data! |
5. Back to Importing
1. Importing SPSS File with SAS Language This video is about importing an SPSS file. You will learn and enjoy a lot in this video. |
6. Input Types and Informats + User-Defined Formats
1. List Input In this video, you will learn about list input, which is the simplest form of input types but does have some limitations. |
2. Column Input In this video, you will learn about column input, which has some advantages over list input. The author will cover what those advantages are! |
3. Formatted Input and Informats When you have to use Informats to read your data properly, it is referred to as formatted input. |
4. User-Defined Formats In this video, the author is going to show you how to create or define your OWN formats. This is often necessary, but it does not have to be difficult to understand! |
7. Arrays
1. Arrays 1 (Recoding Variables) Recoding variables can be time-consuming if you go variable by variable. Let the author show you an easier way! We utilize the do end loop. |
2. Arrays 2 (Constructing New Variables) Constructing new variables manually is a tedious process when you have many variables that you are working with. Let the author teach you a simpler way. |
8. SAS Functions
1. Understanding SAS Functions The author will explain SAS functions. What are they? What can they do? What are arguments? |
2. RAND Function (Producing a Sample with Distribution of Your Choice) The author will show you how to use the rand function. This function allows you to produce a sample (random numbers) with a distribution of your choice. |
3. LENGTH, LENGTHN, LENGTHC Functions (Are You Working with a Large Dataset?) If you work with large datasets (lots of columns/rows), this video will be very useful. Learn about LENGTH, LENGTHC, and LENGTHN functions. |
4. TRIM Function (Want to Get Rid of Trailing Blanks?) The TRIM function copies your argument (or parameter) and gets rid of trailing blanks(space). |
5. COMPRESS Function (Remove Characters from String, and All Types of Blanks) The compress function allows you to remove characters from strings. It also removes leading, trailing, and between blanks. |
6. Input and Put Functions If you want to convert your character variable to a numeric one (so you can do an analysis on that variable), you have to use the INPUT function. If you want to change a numeric variable to a character one, you have to use the PUT function. |
7. CATX Function CATX function will remove both leading and trailing blanks, insert a delimiter (or separator), and return a concatenated (merged) character string. |
8. SCAN Function Do you want to only return the second word (John) from a variable that is storing the concatenated full name of an individual, that is, Fisher, John? Well, now you can! |
9. Coalesce Function The coalesce function will return the first value that is NOT MISSING from a list of numeric arguments. I use an example where you store someone's home phone number and cell #. It's a good example as it is normal to sometimes have a home number but no cell # contact, and the other way around. Well, if there is a value to return, that is, at least a home number or cell is present, it will return that available number for you. |
10. Verify Function The VERIFY function is super useful for data cleaning purposes (picking up errors) in a dataset. The author will show you one way to use it! |
11. Substr Function The author will show you how to use the SUBSTR function, both the right application of it (which allows you to extract a substring) and the left application (which is useful for replacing character value contents). |
9. Advanced Techniques - Flexibilities and Efficiency
1. Flexible Programming 1 - Combining multiple raw data files vertically A flexible way to concatenate a bunch of raw data files vertically. In this video, you will learn how to combine multiple raw data files vertically. |
10. Visual Representation of Data
1. Scatter Plot The author will show you the ease with which you can create a scatter plot with SAS. |
2. Bar Graph The software you are using for this course may not be able to perform the graphs that you have seen so far. Nevertheless, the author will show you which graphs you can do other than a scatter plot. Your place of employment will certainly have it. |
11. Statistical Analysis
1. T-Test Independent Samples Overview (Example) This is an overview (example) of t-test independent samples analysis. |
2. Doing an Independent Samples T-Test Analysis Independent samples t-test is one of the more common tests that businesses and corporations do for their data analysis. The author will show you how to run this test on SAS. |
3. Chi-Square Independence Overview (Example) An overview (example) of how chi-square test of independence works. |
4. Doing a Chi-Square (Independent Groups) Analysis This video will help you understand how to perform a chi-square independent groups analysis using SAS. |
12. Statistical Analysis - Part 2 (Linear and Multiple Regression)
1. Refresh Your Memory - Regression Edition This video is a short explanation of what regression is about with a focus on linear regression. This is a quick refresher and not meant to be comprehensive coverage of the topic. It is added to give you more confidence and clarity when performing this statistical test using SAS. |
2. Performing the Linear Regression In this video, you will be performing the linear regression. |
3. Performing Multiple Regression In this video, you will be performing multiple regression. |
13. Case Studies
1. Case Study (HealthCare Case Study) - Part 1 In this case study, the author will try to integrate some of the concepts you have learned throughout the course and apply these integrated concepts to a real-life situation/example. This is a healthcare-related case study. |
2. Case Study (HealthCare Case Study) - Part 2 This is the second of the two-part video that talks about a case study on healthcare. |
3. Congrats on Finishing Part 1: Data Step This video helps you with an overview of data step. |
14. SQL Fundamentals
1. SQL Syntax The author goes over the basic elements of SAS SQL syntax. |
2. WHERE Clause The WHERE clause allows you to use operators to set conditions and only select what you want from a table. The author will cover the comparison operators, logical operators, and special operators. |
3. SELECT Statement and Columns The author will get into specifics about the SELECT statement. |
4. CASE Logic The author will discuss how you can use case logic/expression. |
5. Summary Functions You will often have to summarize your table and get some statistics. The author will show you how. |
15. SAS SQL and Joining
1. How to Perform an Inner Join This video helps you understand how to perform an inner join. |
2. How to Join Three Tables This video demonstrates how to join three tables. |
3. How to Perform a Left/Right Join This video explains how to perform a left/right join. |
4. How to Perform a Full Join This video explains how to perform a full join. |
16. Working with Tables Using SAS SQL
1. How to Create a Table Using SAS SQL This video explains how to create a table using SAS SQL. |
2. Altering Columns (Add, Modify, Delete, Add Values to Column) This video demonstrates and explains altering columns where you will add, modify, delete, and add values to column. |
3. Inserting Rows with a Query and Set Statement This video explains inserting rows with a query and set statement. |
17. Practical Application of SAS SQL
1. How to Compare Tables with SAS SQL This video helps you understand how to compare tables with SAS SQL. |
2. Finding Duplicate Observations This video demonstrates finding duplicate observations. |
3. Customize the Way You Sort This video explains how to customize the way you sort. |
4. How to Update a Table Under Certain Conditions with SAS SQL This video explains how to update a table under certain conditions with SAS SQL. |
18. Fundamentals of Utilizing SAS Indexes
1. Intro to Indexes/Indices This video provides an introduction to indexes/indices. |
2. Should You Use an Index? This video explains about the index and should you even use it. |
3. Types of Indices This video focuses on the types of indices. |
4. Index Options This video explains the index options. |
5. Testing with Large Datasets This video explains testing with large datasets. |
6. Selecting Variable(s) for Your Index This video focuses on selecting variable(s) for your Index. |
7. PROC Datasets and WHERE Expression This video helps you understand PROC datasets and the WHERE expression. |
8. BY Statement (Sorting Variables, While Exploiting Your Index) This video explains the BY statement where you will be sorting variables, while exploiting your index. |
9. Handling Common Tasks with an Indexed Dataset This video focuses on handling common tasks with an indexed dataset. |
10. Updating the Master Dataset with New Variables or Observations This video helps in updating the master dataset with new variables or observations. |
19. Macro Facility Fundamentals
1. Types of Macro Variables This video explores the types of macro variables. |
2. Don't Lose Track of Your Macro Variables This video explains how to not lose track of our own macro variables. |
3. Macro Variable Assignment Rules This video talks about the macro variable assignment rules. |
4. Masking Special Characters This video helps you understand masking special characters. |
5. Macro Functions (%Index and %Upcase) This video explains macro functions that is %Index and %Upcase. |
6. Macro Functions 2 (%Scan) This video focuses on the second macro function, that is %Scan. |
7. Creating a Macro Variable (Helps You Modify Data Easier) Learning how to create a macro variable can speed up your coding, by making it easier to modify your data. |
8. Macro Programs Introduction The author will introduce you to Macro programs. |
9. Creating a Macro Example 1 (Greater Flexibility and Useful for Repetitive Coding) Learning how to create a macro can give you great flexibility and help finish your coding much quicker. As you know, time is equivalent to money. |
10. Creating a Macro Example 2 (Unique Sales Reports for Different Days) The author will show you how to create a macro that creates different sales reports depending on the day. |
11. Creating a Macro Example 3 (Calculating Average Sales for Multiple Years) This video will help you with creating a macro example where you will be calculating average sales for multiple years. |
12. Debugging Options This video explains debugging options in detail. |
13. Storing Macros (External) This video focuses on storing macros externally. |
14. Brainstorming for Logistic Macro Case Study This video helps you with brainstorming for logistic macro case study. |
15. Logistic Macro, Case Study - Part 1 This is the first of the two-part video that will talk in-depth about a Macro example based on logistic regression. |
16. Logistic Macro, Case Study - Part 2 This is the second of the two-part video that will talk in-depth about a Macro example based on logistic regression. |
20. Introduction to SAS Predictive Modeling Using Logistic Regression
1. Business Applications of Predictive Modeling This video helps you with business applications of predictive modeling. |
2. Analytics Challenges This video demonstrates analytics challenges. |
3. The Major Steps in Predictive Modeling This video explains the major steps in predictive modeling. |
4. Intuitive Understanding of Logistic Regression This video explains intuitive understanding of logistic regression. |
21. SAS Model - Predictive Modeling, Understanding the Problem and the Data
1. Problem Statement/Hypothesis Generation To build a proper SAS model, we have to start by understanding the problem we are trying to solve. |
2. Data Audit This video helps you with the data audit. |
3. Univariate Analysis This video explains univariate analysis. |
4. Bivariate Analysis This video explains bivariate analysis. |
5. Important Housekeeping This video talks about important housekeeping. |
22. SAS Predictive Modeling, Prepare the Input Variables
1. Sources, Patterns, and Mechanisms of Missing Data To build a good SAS model, we have to clearly understand the sources, patterns, and mechanisms of missing data. We don't want to delete data that is critical to us. |
2. Evaluating Missing Data Patterns with SAS There are ways to test or evaluate what kind of missing patterns to ensure you build a great SAS model. |
3. 3 Phase Multiple Imputation Process Using SAS This video focuses on a three-phase multiple imputation process using SAS. |
4. Considering the Output from PROC MI This video helps in considering the output from PROC MI. |
5. Oversampling and Adjusting for Oversampling This video explains oversampling and adjusting for oversampling. |
6. Categorical Inputs This video talks about categorical inputs. |
7. Variable Clustering This video talks about variable clustering. |
8. Multicollinearity This video explains multicollinearity. |
9. Subset Selection This video focuses on subset selection. |
10. Parameter Estimates This video explains parameter estimates. |
23. SAS Predictive Modeling, Evaluation Metrics
1. ROC Curve This video explains the ROC curve in detail. |
2. Scoring Validation Dataset Using Code This video helps you with scoring validation dataset using code. |
3. Decile Calibration Plot This video talks about decile calibration plot. |
4. Feature Engineering This video explains feature engineering. |
24. Extra Content
1. Top Five SAS Certification Questions Answered This video will help you answer the top five SAS Certification questions in detail. |