An open API service indexing awesome lists of open source software.

https://github.com/dcomtois/summarytools

R Package to Quickly and Neatly Summarize Data
https://github.com/dcomtois/summarytools

descriptive-statistics frequency-table html-report markdown pander pandoc pandoc-markdown r rmarkdown rstats rstudio

Last synced: 3 months ago
JSON representation

R Package to Quickly and Neatly Summarize Data

Awesome Lists containing this project

README

          

---
output:
github_document
always_allow_html: true
---

[![CRAN status](https://www.r-pkg.org/badges/version/summarytools)](https://CRAN.R-project.org/package=summarytools)
[![](https://cranlogs.r-pkg.org/badges/summarytools)](http://cran.rstudio.com/web/packages/summarytools/index.html)
[![](https://cranlogs.r-pkg.org/badges/grand-total/summarytools)](http://cran.rstudio.com/web/packages/summarytools/index.html)
PayPal donate button

```{r knitr-setup, include=FALSE}
library(knitr)
opts_chunk$set(echo = TRUE, results = 'asis', class.output = "small")
library(summarytools)
st_options(plain.ascii = FALSE,
style = "rmarkdown",
footnote = NA,
subtitle.emphasis = FALSE,
dfSummary.silent = TRUE,
dfSummary.style = "grid",
descr.silent = TRUE)
library(kableExtra)
```

# Summarytools 1.1 is out!

Check out what's new.

Love **summarytools**? Share the love, [buy me a coffee!](https://buymeacoffee.com/dcomtois)

![](img/collage.png)

**summarytools** is a an [*R*](https://www.r-project.org) package for data
cleaning, exploring, and simple reporting. The package was developed with the
following objectives in mind:

- Provide a coherent set of easy-to-use descriptive functions akin to
those included in commercial statistical software suites such
as SAS, SPSS, and Stata
- Offer flexibility in terms of output format & content
- Integrate well with commonly used software & tools for reporting
(the [RStudio](https://posit.co/products/open-source/rstudio/) IDE,
[Rmarkdown](https://rmarkdown.rstudio.com/),
[Quarto](https://quarto.org/docs/get-started/), and
[knitr](https://yihui.org/knitr/)) while also allowing for standalone,
simple report generation using any R interface

On a more personal level, I simply wish to share with the R community and the
scientific community at large the functions I first developed for myself, but
realized would benefit others who are facing similar challenges when
dealing daily with (often messy) data.

# Package Documentation

The bulk of the technical documentation can now be found in the following
vignettes:

[**Introduction to summarytools**](https://htmlpreview.github.io/?https://github.com/dcomtois/summarytools/blob/master/doc/introduction.html) | [CRAN version](https://cran.r-project.org/package=summarytools/vignettes/introduction.html)
[**Summarytools in R Markdown**](https://htmlpreview.github.io/?https://github.com/dcomtois/summarytools/blob/master/doc/rmarkdown.html) | [CRAN Version](https://cran.r-project.org/packages=summarytools/vignettes/rmarkdown.html)
[**PDF Manual**](https://cran.r-project.org/web/packages/summarytools/summarytools.pdf) (automatically generated by CRAN)

# Installing summarytools

### Required Software

Additional software is used by **summarytools** for fine-tuning graphics as well
as offering interactive functionality. If you are installing **summarytools**
for the first time, click on the relevant link to get OS-specific instructions.
On Windows, no additional software is required.

Mac OS X
Ubuntu / Debian / Mint
Older Ubuntu (14 and 16)
Fedora / Red Hat / CentOS
Solaris

### Installing From GitHub

This method has the advantage of benefiting from minor fixes and improvements
that are added between CRAN releases. Its main drawback is that you won't be
noticed when a new version is available. You can either check this page from
time to time, or best, use a package that checks for package updates on various
repositories, such as [dtupdate](https://github.com/hrbrmstr/dtupdate) and
[Drat](https://dirk.eddelbuettel.com/code/drat.html).

```{r, eval=FALSE}
install.packages("remotes") # Using devtools or pak is also possible
library(remotes)
install_github("rapporter/pander") # Strongly recommended
install_github("dcomtois/summarytools", build_vignettes = TRUE)
```

### Installing From CRAN

CRAN versions are stable but are not updated as often as the GitHub versions. On
the plus side, they can be easier to install on some systems.

```{r, eval=FALSE}
install.packages("summarytools")
```

# Latest Changes

- Version 1.1.0 introduced a few significant improvements, aside from the bug
fixes.

- In `stby()`, the `useNA` parameter can be used to generate additional
groupings for observations where the grouping variable(s) are `NA`
- Labelled vectors from **haven** & **labelled** are treated like factors
by `freq()` (always) and `dfSummary()` (only when all values have labels;
this is to avoid generating factors with countless numerical levels).
- `descr()` is more flexible with the stats parameters; you can for instance
use `stats = c("all", -"kurtosis")` if you need everything except kurtosis
- The helper function `zap_attr()` turns results into simple matrices,
adding an alternative to `tb()` when you need to work further with the
results
- A new `na.val` parameter was added to `freq()`, `ctable()` and
`dfSummary()`, which allows treating a particular character value or
factor level as `NA`. One common instance would be "" (empty string) for
character vectors.
- Sampling weights were a bit buggy with by-groups, and so was `tb()` with
`freq()` results. This is now a thing of the past.
- See the package's NEWS for more details: `news(package="summarytools")`

- In `dfSummary()` since 1.0.1:

- It is possible to control which statistics to show in the *Freqs /
Values* column (see `help("st_options", "summarytools")` for examples)
- In *html* outputs, tables are better aligned horizontally
(categories \>\> counts \>\> charts); if misalignment occurs, adjusting
`graph.magnif` should resolve it
- List-type columns and `Inf` values are handled properly

For more details, see `vignette("introduction", "summarytools")` as well as
`news(package = "summarytools")`.

# Additional Software Installations

### Required Software on Mac OS

- [**XQuartz**](https://www.xquartz.org/)
- [**Magick++**](https://imagemagick.org/Magick++/)

Magick++ can be installed using
[Homebrew](https://formulae.brew.sh/formula/imagemagick) or
[Macports](https://ports.macports.org/port/ImageMagick/).

Back to installation instructions

### Required Software for Debian / Ubuntu / Linux Mint

[**Magick++**](https://imagemagick.org/Magick++/)
`sudo apt install libmagick++-dev`

Back to installation instructions

### Required Software for Older Ubuntu Versions

This applies only if you are using Ubuntu Trusty (14.04) or Xenial (16.04).

[**Magick++**](https://imagemagick.org/Magick++/)

sudo add-apt-repository -y ppa:opencpu/imagemagick
sudo apt-get update
sudo apt-get install -y libmagick++-dev

Back to installation instructions

### Required Software for Fedora / Red Had / CentOS

[**Magick++**](https://imagemagick.org/Magick++/)
`sudo yum install ImageMagick-c++-devel`

Back to installation instructions

### Required Software for Solaris

[**Magick++**](https://imagemagick.org/Magick++/)

pkgadd -d http://get.opencsw.org/now
/opt/csw/bin/pkgutil -U
/opt/csw/bin/pkgutil -y -i imagemagick
/usr/sbin/pkgchk -L CSWimagemagick

Back to installation instructions

# Support *summarytools*' Development

If **summarytools** brings value to your work, please consider making a
donation. It will bring a smile to my face and boost my productivity! [Buy me a coffee](https://buymeacoffee.com/dcomtois),
or use the [PayPal link]("https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=HMN3QJR7UMT7S&item_name=Help+scientists,+data+scientists+and+analysts+around+the+globe&currency_code=CAD&source=url"). Thanks!

### Supporters
A big thanks to the following people who made donations:

- Ashirwad Barnwal
- David Thomas
- Peter Nilsson
- Ross Dunne
- Igor Rubets
- Joerg Sahlmann
- Mark Friedman
- Roger Hilfiker
- Stefano Lav

The package comes with no guarantees. It is a work in progress and feedback is
always welcome. Please open an [issue on
GitHub](https://github.com/dcomtois/summarytools/issues) if you find a bug or
wish to submit a feature request.

Back to top