Richann Watson



Follow us at:





All Spring  and Fall SAS Conferences are being held virtually



Oct 18-19th, 2021

Click here for more




Oct 28th, 2021

Click here for more




Oct 29th, 2021

Click here for more




Arp 2021 - Feb 2022


Using a Picture Format to Create Visit Windows

Richann Watson

Automated or Manual Validation: Which One is for You?

Richann Watson and Patty Johnson

Validation is an essential part of the development process in clinical trial. It is common practice that derived data sets are validated using a more automated method. However, table and listing outputs typically use a manual approach. The manual method of checking the informational aspects of the output is a time consuming process and is subject to human error. This paper presents an automated approach for performing a 100% validation of the informational portion of summary table and listing outputs.

Generating Least Square Means, Standard Error, Observed Mean, Standard Deviation and Confidence Intervals for Treatment Differences using Proc Mixed

Great Time to Learn GTL: A Step-by-Step Approach to Creating the Impossible

Interactive Graphs

Richann Watson

Richann Watson, DataRich Consulting

Kriss Harris, SAS Specialists Limited; Richann Watson, DataRich Consulting

The DOMIXED macro allows for the calculation of least square means, standard error, observed mean, standard deviation and confidence intervals for treatment difference. The macro will also calculate p-values.  It produces data sets in one of two layouts depending on desired layout.

Output Delivery System (ODS) graphics, produced by SAS® procedures, are the backbone of the Graph Template Language (GTL). Procedures such as the Statistical Graphics (SG) procedures dynamically generate GTL templates based on the plot requests made through the procedure syntax. For this paper, these templates will be referenced as procedure-driven templates. GTL generates graphs using a template definition that provides extensive control over output formats and appearance. Would you like to learn how to build your own template and make customized graphs and how to create that one highly desired, unique graph that at first glance seems impossible? Then it’s a Great Time to Learn GTL! This paper guides you through the GTL fundamentals while walking you through creating a graph that at first glance appears too complex but is truly simple once you understand how to build your own template.

This paper demonstrates how you can use interactive graphics in SAS® 9.4 to assess and report your safety data. The interactive visualizations that you will be shown include the adverse event and laboratory results. In addition, you will be shown how to display "details-on-demand" when you hover over a point.

Adding interactivity to your graphs will bring your data to life and help improve lives!


Quick, Call the “FUZZ” : Using Fuzzy Logic

What's Your Favorite Color?

Controlling the Appearance of a Graph

Richann Watson, DataRich Consulting; Louise Hadden, Abt Associates Inc.

Richann Watson, DataRich Consulting

SAS® practitioners are frequently called up on to do a comparison of data between two different data sets and find that the values in synonymous fields do not line up exactly. A second quandary occurs when there is one data source to search for particular values, but those values are contained in character fields in which the values can be represented in myriad different ways. This paper discusses robust, if not warm and fuzzy, techniques for comparing data between, and selecting data in, SAS data sets in not so ideal conditions.

The appearance of a graph produced by the Graph Template Language (GTL) is controlled by Output Delivery System (ODS) style elements. These elements include fonts and line and marker properties as well as colors. A number of procedures, including the Statistical Graphics (SG) procedures, produce graphics using a specific ODS style template. This paper provides a very basic background of the different style templates and the elements associated with the style templates. However, sometimes the default style associated with a particular destination does not produce the desired appearance. Instead of using the default style, you can control which style is used by indicating the desired style on the ODS destination statement. However, sometimes not a single one of the 50-plus styles provided by SAS® achieves the desired look. Luckily, you can modify an ODS style template to meet your own needs. One such style modification is to control which colors are used in the graph. Different approaches to modifying a style template to specify colors used are discussed in depth in this paper.


Often times people over look various functionalities of PROC FORMAT, in this paper I illustrate the use of the PICTURE format to build visit windows.

‘V’ for … Variable Information Functions to the Rescue

Richann Watson; Karl Miller

There are times when we need to use the attributes of a variable within a data set.  With the use of the ‘V’ functions (e.g., VNAME, VVALUE, etc.), the various attributes can be obtained and used immediately within the data step.

Exploring HASH Tables vs. SORT/DATA Step vs. PROC SQL

Richann Watson; Lynn Mullins

This paper compares the use of Hash objects in a data step, the standard data step and PROC SQL with different data sets to determine if one method is more efficient in certain situations.

Let SAS® Do Your DIRty Work

Richann Watson

The use of command interpreter (CMD shell) or UNIX commands can help to automate the moving or archiving of files.

Check Please: An Automated Approach to Log Checking


Richann Watson

In this paper, the author discusses her approach to checking logs using a macro that she developed.

When ANY Function Will Just NOT Do

Richann Watson; Karl Miller

Often times we need to determine if a particular variable contains a specific type of value or character.  This can be done using a variety of functions that the author refers to as the ‘ANY’ and ‘NOT’ functions.  These functions look for the specific character or the lack of a specific character within a value.

Let’s Get FREQy with our Statistics: Data-Driven Approach to Determining Appropriate Test Statistic


Richann Watson; Lynn Mullins

As programmers, we are often asked to program statistical analysis procedures to run against the data.  Sometimes, the statistical procedures to use need to be data dependent.  To run these procedures based on the results of previous procedures' output requires a little more preplanning and programming.  A macro that will dynamically determine which statistical procedure to run based on previous procedure output is presented.

Automated Validation of Complex Clinical Trials Made Easy


Richann Watson; Josh Horstman

In this paper, the authors discuss various ways to approach validation of clinical trials with some of the approaches being manual.  In addition, they discuss the pros and cons of these approaches.  These pros and cons lead to the development of a macro that can be used to parse the Compare procedure output.

Animate your Data!

Kriss Harris; Richann Watson

The authors demonstrate how you can use animation in SAS® 9.4 to report your safety data. You will also learn how to use the EXPAND procedure to ensure that your animations are smooth.

Great Time to Learn GTL

Kriss Harris; Richann Watson

It’s a Great Time to Learn GTL! Do you want to be more confident when producing GTL graphs? Do you want to know how to layer your graphs using the OVERLAY layout and build upon your graphs using multiple LAYOUT statement? This paper guides you through the GTL fundamentals!


©2018 DataRich Consulting | Produced by Philip Gregory




CDISC Papers

SAS Papers