The sassy package is a meta-package that aims to make R easier for everyone, especially people with a background in SAS®. The package brings several useful SAS® concepts to R, including data libraries, formats and format catalogs, data dictionaries, a data step, a traceable log, and a reporting package with a variety of printable report types.

The core of the sassy system is the procs package. This package contains replications of several SAS® procedures: proc_freq(), proc_means(), proc_transpose(), and proc_sort(). Combined with the datastep() function from the libr package, you can write code in R that very much resembles what you would write in SAS®. These functions provide a higher-level programming interface than is typically found in R, and can therefore make your analysis more efficient and productive.

Included Packages

The sassy meta-package contains the following packages:

  • logr: Produces a traceable log
  • fmtr: Provides functions for formatting data and a creating a format catalog
  • libr: Gives you the ability to define a libname, generate a data dictionary, and simulate a data step
  • reporter: A reporting package with easy layout capabilities and the ability to write reports in TXT, RTF, PDF, and DOCX file formats
  • common: A set of utility functions shared across the sassy family of packages, and often useful in their own right.
  • procs: A set of functions that simulate SAS® procedures. Package includes simulations of PROC FREQ, PROC MEANS, PROC TRANSPOSE, PROC SORT, and PROC PRINT.

The above links will take you into the respective packages for a deep dive on their capabilities.

Next Steps

Before taking a deep dive into the sassy package documentation, please look at some examples. These examples will give you a feel for the overall flow of a sassy-enhanced program, and allow you to see how the functions work together.

The following examples are provided on this site:

  • Example 1: Creates a simple data listing and log

  • Example 2: Creates a table of demographic characteristics

  • Example 3: Creates a simple figure

  • Example 4: Creates an AE table with a page wrap

  • Example 5: Creates a table of vital signs statistics

  • Example 6: Creates a figure with a by-group

  • Example 7: Perform survival analysis.

  • Example 8: Creates a patient profile report.

  • Example 9: Creates a figure with a forest plot.

  • Example 10: Creates a subject disposition table.

  • Example 11: Creates a subject listing with vital signs by visit.

  • Example 12: Creates a combined figure of age groups by treatment.

  • Example 13: Creates a Mean Change from Baseline figure for laboratory values.

  • Example 14: Creates an AE table with severity grades in rows

  • Example 15: Creates both stand-alone and “intext” versions of a demographics table.

  • Example 16: Creates a shift table of lab values.

Once you review these examples, please proceed to the package links above to explore the system further!