# sassy

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_ttest()`, `proc_reg()`, `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, HTML, 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.
- macro: A macro language for R that allows easy, text-based meta-programming.

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!