Learn R Programming

⚠️There's a newer version (3.6.3) of this package.Take me there.

The arsenal Package

Overview

The goal of library(arsenal) is to make statistical reporting easy. It includes many functions which the useR will find useful to have in his/her "arsenal" of functions. There are, at this time, 6 main functions, documented below. Each of these functions is motivated by a local SAS macro or procedure of similar functionality.

Note that arsenal v3.0.0 is not backwards compatible with previous versions (mainly because compare() got renamed to comparedf()). See the NEWS file for more details.

The tableby() Function

tableby() is a function to easily summarize a set of independent variables by one or more categorical variables. Optionally, an appropriate test is performed to test the distribution of the independent variables across the levels of the categorical variable. Options for this function are easily controlled using tableby.control().

The tableby() output is easily knitted in an Rmarkdown document or displayed in the command line using the summary() function. Other S3 methods are implemented for objects from tableby(), including print(), [, as.data.frame(), sort(), merge(), padjust(), head(), and tail().

The paired() Function

paired() is a function to easily summarize a set of independent variables across two time points. Optionally, an appropriate test is performed to test the distribution of the independent variables across the time points. Options for this function are easily controlled using paired.control().

The paired() output is easily knitted in an Rmarkdown document or displayed in the command line using the summary() function. It has the same S3 methods as tableby(), since it's a special case of the tableby() object.

The modelsum() Function

modelsum() is a function to fit and summarize models for each independent variable with one or more response variables, with options to adjust for covariates for each model. Options for this function are easily controlled using modelsum.control().

The modelsum output is easily knitted in an Rmarkdown document or displayed in the command line using the summary() function. Other S3 methods are implemented for objects from modelsum(), including print(), [, as.data.frame(), and merge().

The freqlist() Function

freqlist() is a function to approximate the output from SAS's PROC FREQ procedure when using the /list option of the TABLE statement. Options for this function are easily controlled using freq.control().

The freqlist() output is easily knitted in an Rmarkdown document or displayed in the command line using the summary() function. Other S3 methods are implemented for objects from freqlist(), including print(), [, as.data.frame(), sort(), and merge(). Additionally, the summary() output can be used with head() or tail().

The comparedf() Function

comparedf() compares two data.frames and reporting any differences between them, much like SAS's PROC COMPARE procedure.

The comparedf() output is easily knitted in an Rmarkdown document or displayed in the command line using the summary() function. Other S3 methods are implemented for objects of class "comparedf", including print(), n.diffs(), n.diff.obs(), and diffs().

The write2*() Family of Functions

write2word(), write2pdf(), and write2html() are functions to output a table into a document, much like SAS's ODS procedure. The S3 method behind them is write2(). There are methods implemented for tableby(), modelsum(), freqlist(), and comparedf(), and also methods for knitr::kable(), xtable::xtable(), and pander::pander_return(). Another option is to coerce an object using verbatim() to print out the results monospaced (as if they were in the terminal)--the default method does this automatically. To output multiple tables into a document, simply make a list of them and call the same function as before. A YAML header can be added using yaml(). Code chunks can be written using code.chunk().

For more information, see vignette("write2").

Other Notable Functions

  • keep.labels() keeps the 'label' attribute on an R object when subsetting. loosen.labels() allows the labels to drop again.

  • formulize() is a shortcut to collapse variable names into a formula.

  • mdy.Date() and Date.mdy() convert numeric dates for month, day, and year to Date object, and vice versa.

  • is.Date: tests if an object is a date.

  • %nin% tests for "not in", the negation of %in%.

  • allNA() tests for all elements being NA, and includeNA() makes NAs explicit values.

Copy Link

Version

Install

install.packages('arsenal')

Monthly Downloads

5,587

Version

3.3.0

License

GPL (>= 2)

Issues

Pull Requests

Stars

Forks

Maintainer

Ethan Heinzen

Last Published

September 7th, 2019

Functions in arsenal (3.3.0)

freqlist.internal

Helper functions for freqlist
freqlist

freqlist
arsenal

An Arsenal of 'R' Functions for Large-Scale Statistical Summaries
as.data.frame.modelsum

as.data.frame.modelsum
internal.functions

Split a string into pieces intelligently
modelsum.control

Control settings for modelsum function
modelsum

Fit models over each of a set of independent variables with a response variable
%nin%

Not in
as.data.frame.tableby

as.data.frame.tableby
modelsum.family

Family functions for modelsum
arsenal_table

arsenal tables with common structure
as.data.frame.freqlist

as.data.frame.freqlist
comparedf.tolerances

comparedf tolerances
tableby.control

Control settings for tableby function
modelsum.internal

Helper functions for modelsum
summary.tableby

The summary method for a tableby object
paired

Summary Statistics of a Set of Independent Variables Paired Across Two Timepoints
padjust

Adjust P-values for Multiple Comparisons
diffs

Extract differences
tableby

Summary Statistics of a Set of Independent Variables by a Categorical Variable
summary.modelsum

Summarize a modelsum object.
paired.internal

Helper functions for paired
summary.freqlist

summary.freqlist
paired.control

Control settings for paired function
summary.comparedf

The summary method for a comparedf object
reexports

Objects exported from other packages
comparedf.control

Control settings for comparedf function
freq.control

Control settings for freqlist function
comparedf

Compare two data.frames and report differences
formulize

formulize
tableby.internal

Helper functions for tableby
write2specific

write2word, write2html, write2pdf
yaml

Include a YAML header in write2
mdy.Date

Convert numeric dates to Date object, and vice versa
tableby.stats

tableby Summary Statistics Functions
mockstudy

Mock study data for examples
write2.internal

Helper functions for write2
tableby.stats.internal

Internal tableby functions
write2

write2
NA.operations

Some functions to handle NAs
arsenal-deprecated

Deprecated functions in arsenal
arsenal-defunct

Defunct functions in arsenal
keep.labels

Keep Labels
labels

Labels