Hands-On-Workshops

The ODS Excel Destination: Assorted Tips and Techniques to Simplify Writing SAS Data To Excel Workbooks

William Benjamin

Did you ever wish you could use the power of SAS® to take control of EXCEL and make EXCEL do what you wanted “WHEN YOU WANTED”? Well one letter is the key to doing just that, the letter “X” as in the SAS “X” Command that opens the door to all operating system commands from SAS. The Windows operating system comes with a facility to write a series of commands called scripts. These scripts have the ability to open and reach into the internals of EXCEL. Scripts can load, execute and remove VBA macro code and control EXCEL. This level of control allows you to make EXCEL do what you want, without leaving any traces of a macro behind. This is Power.

Animate your Data!

Richann Watson and Kriss Harris

When reporting your safety data, do you ever feel sorry for the person who  has  to read all the laboratory listings and summaries? Or have you ever wondered if there is a better way to visualize safety data? Let’s use animation to help the reviewer and to reveal patterns in your safety data, or in any data!
This hands-on workshop demonstrates how you can use animation in SAS® 9.4 to report your safety data, using techniques such as visualizing a patient’s laboratory results, vital sign results, and electrocardiogram results and seeing how those safety results change over time. In addition, you will learn how to animate adverse events over time, and how to show the relationships between adverse events and laboratory results using animation. You will also learn how to use the EXPAND procedure to ensure that your animations are smooth. Animating your data will bring your data to life and help improve lives!

Getting Started with the SGPLOT Procedure

Josh Horstman

Do you want to create highly-customizable, publication-ready graphics in just minutes using SAS? This workshop will introduce the SGPLOT procedure, which is part of the ODS Statistical Graphics package included in Base SAS. Starting with the basic building blocks, you’ll be constructing basic plots and charts in no time. We’ll work through several different plot types and learn some simple ways to customize each one.

Everything is better with friends: Executing SAS code in Python scripts with SASPy

Isaiah Lankham and Matthew Slaughter

SASPy is a module developed by SAS Institute for the Python programming language, providing an alternative interface to the SAS system. With SASPy, SAS procedures can be executed in Python scripts using Python syntax, and data can be transferred between SAS datasets and DataFrame objects defined by the Python module pandas. This allows SAS programmers to take advantage of the flexibility of Python for flow control, and Python programmers to incorporate SAS analytics into their scripts.

In this hands-on workshop, we use the Jupyter Notebook interface for SAS University Edition to complete common data-analysis tasks using both normal SAS code and SASPy within a Python script. We also highlight important tradeoffs for each approach, emphasizing the value of being a polyglot programmer.

As background, Python is an open-source language originally developed for teaching programming in the 1990s. Highly praised for its straightforward syntax, Python initially became popular as a ""glue"" language and is now widely used in many problem domains, from data science to web development. Many popular websites are Python applications, including YouTube and Instagram.

This workshop is aimed at users of all skill levels, including those with no prior experience using Python or Jupyter Notebook, and assumes only basic familiarity with SAS syntax. Attendees wishing to follow along using their own computer should pre-install the latest version of SAS University Edition, which includes everything needed to try out SASPy.

The shape of SAS code

Charu Shankar

There are many languages that co-exist in the ecosystem of your SAS toolbox.
This HOW will teach you how to use 4 SAS languages: Base SAS, PROC SQL, PERL language elements, and the SAS Macro language to help you manipulate and investigate your data. Learn to leverage these powerful languages to check your data with simple yet elegant techniques like Boolean logic in PROC SQL,  operators like the SOUNDS LIKE operator in the DATA step/PROC step,  functions like the SCAN function within the DATA step, efficient checking of your data with PERL regular expression, and last but not least the amazing marriage between PROC SQL & the SAS macro language to hold data you just found in a variable that you can use over and over again.  This HOW will focus on coding techniques for data investigation and manipulation using Base SAS.

A Strategy for Dealing with Pinnacle 21 Errors and Warnings

Carey Smoak

Pinnacle 21 is a widely used tool for evaluating SDTM and ADaM datasets that are to be submitted to regulatory authorities (FDA and PMDA) for approval of a drug or biologic product.   Pinnacle 21 evaluates these SDTM and ADaM datatsets against published validation rules and produces a spreadsheet listing errors and warnings based on the validation rules.  Have you ever wondered how to deal with all the errors and warnings that are found in a Pinnacle 21 report? In this Hands On Workshop you will learn a strategy for annotating Pinnacle 21 Reports to help you keep track of the types of errors and warnings that Pinnacle 21 produces.  Attendees in this Hands On Workshop will learn practical steps for annotating a Pinnacle 21 Report to deal with the types of errors and warnings.

Survey data analysis made easy with SAS: a hands-on workshop

Melanie Dove and Katherine Heck

Surveys are a common type of data set that often require special procedures to analyze accurately. Population-based, representative surveys often incorporate complex methods in data collection, such as oversampling, weighting, stratification, or clustering. Analysis of these data sets will result in incorrect estimates and may overstate significance testing if survey procedures, such as PROC SURVEYFREQ, are not used. Survey procedures use unique syntax that allow the program to adjust for the complex sample design and weighting of representative surveys.

This Hands-on Workshop (HOW) will complement our half-day course on survey analysis and teach attendees how to generate frequencies, percentages, and means using SAS Survey Procedures. The HOW will explain how the SAS code adjusts for the complex survey design factors. The course will also explain how to interpret the output data from each survey procedure. The HOW will use the National Health and Nutrition Examination Survey (NHANES) and the California Health Interview Survey (CHIS) as examples. Attendees will have the opportunity to practice using SAS survey procedures on CHIS and NHANES.

Manipulating Statistical and Other Procedure Output to Get the Results That You Need

Vincent DelGobbo

Many scientific and academic journals require that statistical tables be in a specific format (for example, the American Psychological Association [APA] style). This paper shows you how to change the output of any SAS® procedure to conform to any journal or corporate style. You'll learn how to save data from any SAS procedure, change the data format using the DATA step, and dynamically create a format based on your data. You'll also use the SAS Output Delivery System (ODS) inline formatting functions and style overrides, and produce several output formats, including HTML, RTF (for Microsoft Word), PDF, and Microsoft Excel files. Finally, you'll learn how to create and deliver the output on-demand using SAS server technology. This paper is appropriate for all SAS skill levels.