Appendix A: Packages used

A.1 Amelia

Amelia: A Program for Missing Data


Package Profile A.1: {Amelia}: A Program for Missing Data

{Amelia}: A Program for Missing Data (Honaker, King, and Blackwell 2011)

A tool that “multiply imputes” missing data in a single cross-section (such as a survey), from a time series (like variables collected for each year in a country), or from a time-series-cross-sectional data set (such as collected by years for each of several countries). {Amelia} II implements our bootstrapping-based algorithm that gives essentially the same answers as the standard IP or EMis approaches, is usually considerably faster than existing approaches and can handle many more variables. Unlike Amelia I and other statistically rigorous imputation software, it virtually never crashes (but please let us know if you find to the contrary!). The program also generalizes existing approaches by allowing for trends in time series across observations within a cross-sectional unit, as well as priors that allow experts to incorporate beliefs they have about the values of missing cells in their data. {Amelia} II also includes useful diagnostics of the fit of multiple imputation models. The program works from the R command line or via a graphical user interface that does not require users to know R.


A.2 aplpack

aplpack: Another Plot Package: ‘Bagplots’, ‘Iconplots’, ‘Summaryplots’, Slider Functions and Others


Package Profile A.2: {aplpack}: Another Plot Package: ‘Bagplots’, ‘Iconplots’, ‘Summaryplots’, Slider Functions and Others

{aplpack}: Another Plot Package: ‘Bagplots’, ‘Iconplots’, ‘Summaryplots’, Slider Functions and Others (Wolf 2019)

(There is no hexagon logo for {aplpack} available)

Some functions for drawing some special plots:

  • ‘bagplot’ plots a bagplot,
  • ‘faces’ plots chernoff faces,
  • ‘iconplot’ plots a representation of a frequency table or a data matrix,
  • ‘plothulls’ plots hulls of a bivariate data set,
  • ‘plotsummary’ plots a graphical summary of a data set,
  • ‘puticon’ adds icons to a plot,
  • ‘skyline.hist’ combines several histograms of a one dimensional data set in one plot,
  • ‘slider’ functions supports some interactive graphics,
  • ‘spin3R’ helps an inspection of a 3-dim point cloud,
  • ‘stem.leaf’ plots a stem and leaf plot,
  • ‘stem.leaf.backback’ plots back-to-back versions of stem and leaf plot.


A.3 car

car: Companion to Applied Regression


Package Profile A.3: {car}: Companion to Applied Regression

{car}: Companion to Applied Regression (Fox and Weisberg 2019a)

Functions to Accompany J. Fox and S. Weisberg, An R Companion to Applied Regression, Third Edition, Sage, 2019. (Fox and Weisberg 2018)

An R Companion to Applied Regression is a broad introduction to the R statistical computing environment in the context of applied regression analysis. The book provides a step-by-step guide to using the free statistical software R, and emphasizes integrating statistical computing in R with the practice of data analysis. The R packages car and effects, written to facilitate the application and interpretation of regression analysis, are extensively covered in the book.


A.4 carData

carData: Datasets to accompany J. Fox and S. Weisberg, An R Companion to Applied Regression, Third Edition, Sage (2019).


Package Profile A.4: Datasets to accompany J. Fox and S. Weisberg, An R Companion to Applied Regression, Third Edition, Sage (2019). (Fox and Weisberg 2018)

{carData}: Datasets to accompany J. Fox and S. Weisberg, An R Companion to Applied Regression, Third Edition, Sage (2019).


:::::

A.5 effects

effects: Effect Displays for Linear, Generalized Linear, and Other Models


Package Profile A.5: {effects}: Effect Displays for Linear, Generalized Linear, and Other Models

{effects}: Effect Displays for Linear, Generalized Linear, and Other Models (Fox and Weisberg 2019b)

Graphical and tabular effect displays, e.g., of interactions, for various statistical models with linear predictors.


A.6 ggExtra

ggExtra: Add Marginal Histograms to ‘ggplot2’, and More ‘ggplot2’ Enhancements


Package Profile A.6: {ggExtra}: Add Marginal Histograms to ‘ggplot2’, and More ‘ggplot2’ Enhancements

{ggExtra}: Add Marginal Histograms to ‘ggplot2’, and More ‘ggplot2’ Enhancements (Attali and Baker 2023)

(There is no hexagon logo for {ggExtra} available)

Collection of functions and layers to enhance {ggplot2}. The flagship function is ggExtra::ggMarginal(), which can be used to add marginal histograms/boxplots/density plots to {ggplot2} scatterplots.

Several years ago there was a different package called ggExtra, by Baptiste (the author of {gridExtra}). That old ggExtra package was deleted in 2011, and this package has nothing to do with the old one.


A.7 ggiraph

ggiraph: Make ‘ggplot2’ Graphics Interactive


Package Profile A.7: {ggiraph}: Make ‘ggplot2’ Graphics Interactive

{ggiraph}: Make ‘ggplot2’ Graphics Interactive (Gohel and Skintzos 2024)

Create interactive {ggplot2} graphics using {htmlwidgets}. {ggiraph} is a tool that allows you to create dynamic ggplot graphs. This allows you to add tooltips, hover effects and JavaScript actions to the graphics. The package also allows the selection of graphical elements when used in shiny applications.

Interactivity is added to ggplot geometries, legends and theme elements, via the following aesthetics:

  • tooltip: tooltips to be displayed when mouse is over elements.
  • onclick: JavaScript function to be executed when elements are clicked.
  • data_id: id to be associated with elements (used for hover and click actions)


A.8 ggmice

ggmice: Visualizations for ‘mice’ with ‘ggplot2’


Package Profile A.8: {ggmice}: Visualizations for ‘mice’ with ‘ggplot2’

{ggmice}: Visualizations for ‘mice’ with ‘ggplot2’ (Oberman 2023)

Enhance a mice imputation workflow with visualizations for incomplete and/or imputed data. The ggmice functions produce ggplot objects which may be easily manipulated or extended. Use {ggmice} to inspect missing data, develop imputation models, evaluate algorithmic convergence, or compare observed versus imputed data.


A.9 ggrepel

ggrepel: Automatically Position Non-Overlapping Text Labels with ‘ggplot2’


Package Profile A.9: {ggrepel}: A Package for Automatically Position Non-Overlapping Text Labels with ‘ggplot2’

{ggrepel}: Automatically Position Non-Overlapping Text Labels with ‘ggplot2’ (Slowikowski 2024)

Provides text and label geoms for ‘ggplot2’ that help to avoid overlapping text labels. Labels repel away from each other and away from the data points.

{ggrepel} provides two geoms for {ggplot2} to repel overlapping text labels:

  • ggrepel::geom_text_repel()
  • ggrepel::geom_label_repel()

A.10 glossary

glossary: Glossaries for Markdown and Quarto Documents


Package Profile A.10: {glossary}: Glossaries for Markdown and Quarto Documents

{glossary}: Glossaries for Markdown and Quarto Documents (DeBruine 2023)

Add glossaries to markdown and quarto documents by tagging individual words. Definitions can be provided inline or in a separate file.

There is a lot of necessary jargon to learn for coding. The goal of glossary is to provide a lightweight solution for making glossaries in educational materials written in quarto or R Markdown. This package provides functions to link terms in text to their definitions in an external glossary file, as well as create a glossary table of all linked terms at the end of a section.


A.11 glue

glue: Interpreted String Literals


Package Profile A.11: {glue}: A Package for Interpreting Literal Strings

{glue}: Interpreted String Literals

An implementation of interpreted string literals, inspired by Python’s Literal String Interpolation

Glue offers interpreted string literals that are small, fast, and dependency-free. Glue does this by embedding R expressions in curly braces which are then evaluated and inserted into the argument string.


A.12 mi

mi: Missing Data Imputation and Model Checking


Package Profile A.12: {mi}: Missing Data Imputation and Model Checking

{mi}: Missing Data Imputation and Model Checking (Gelman and Hill 2011)

The {mi} package provides functions for data manipulation, imputing missing values in an approximate Bayesian framework, diagnostics of the models used to generate the imputations, confidence-building mechanisms to validate some of the assumptions of the imputation algorithm, and functions to analyze multiply imputed data sets with the appropriate degree of sampling uncertainty.


A.13 mice

mice: Multivariate Imputation by Chained Equations


Package Profile A.13: {mice}: Multivariate Imputation by Chained Equations

{mice}: Multivariate Imputation by Chained Equations (S. van Buuren and Groothuis-Oudshoorn 2011a)

The {mice} package implements a method to deal with missing data. The package creates multiple imputations (replacement values) for multivariate missing data. The method is based on Fully Conditional Specification, where each incomplete variable is imputed by a separate model. The MICE algorithm can impute mixes of continuous, binary, unordered categorical and ordered categorical data. In addition, MICE can impute continuous two-level data, and maintain consistency between imputations by means of passive imputation. Many diagnostic plots are implemented to inspect the quality of the imputations.

Multiple imputation using Fully Conditional Specification (FCS) implemented by the MICE algorithm (S. van Buuren and Groothuis-Oudshoorn 2011b). Each variable has its own imputation model. Built-in imputation models are provided for continuous data (predictive mean matching, normal), binary data (logistic regression), unordered categorical data (polytomous logistic regression) and ordered categorical data (proportional odds). MICE can also impute continuous two-level data (normal model, pan, second-level variables). Passive imputation can be used to maintain consistency between variables. Various diagnostic plots are available to inspect the quality of the imputations.

See also Package Profile A.8.


A.14 naniar

naniar: Data Structures, Summaries, and Visualisations for Missing Data


Package Profile A.14: {naniar}: https://github.com/njtierney/naniar

{naniar}: https://github.com/njtierney/naniar (Tierney and Cook 2023a)

{naniar} provides principled, tidy ways to summarise, visualise, and manipulate missing data with minimal deviations from the workflows in ggplot2 and tidy data.

Missing values are ubiquitous in data and need to be explored and handled in the initial stages of analysis. {naniar} provides data structures and functions that facilitate the plotting of missing values and examination of imputations. This allows missing data dependencies to be explored with minimal deviation from the common work patterns of ‘ggplot2’ and tidy data. The work is fully discussed in Tierney & Cook (2023b).


A.15 norm

norm: Analysis of Multivariate Normal Datasets with Missing Values


Package Profile A.15: {norm}: Analysis of Multivariate Normal Datasets with Missing Values

{norm}: Analysis of Multivariate Normal Datasets with Missing Values (. 2023)

(There is no hexagon logo for {norm} available)

An integrated set of functions for the analysis of multivariate normal datasets with missing values, including implementation of the EM algorithm, data augmentation, and multiple imputation.


A.16 plotly

plotly: Create Interactive Web Graphics via ‘plotly.js’


Package Profile A.16: {plotly}: Create Interactive Web Graphics via ‘plotly.js’

{plotly}: Create Interactive Web Graphics via ‘plotly.js’ (Sievert 2020)

Create interactive web graphics from ‘ggplot2’ graphs and/or a custom interface to the (MIT-licensed) JavaScript library ‘plotly.js’ inspired by the grammar of graphics.

Plotly.js is a standalone Javascript data visualization library, and it also powers the Python and R modules named plotly in those respective ecosystems (referred to as Plotly.py and Plotly.R).

Plotly.js can be used to produce dozens of chart types and visualizations, including statistical charts, 3D graphs, scientific charts, SVG and tile maps, financial charts and more.


A.17 plotrix

plotrix: Various Plotting Functions


Package Profile A.17: Lots of plots, various labeling, axis and color scaling functions.

{plotrix}: Various Plotting Functions (J 2006)

(There is no hexagon logo for {plotrix} available)

A common plot in the scientific literature is a graph of group means with error bars showing ±1 SD around the means. This plot can be drawn conveniently using the plotrix::plotCI() function

{plotrix}: Various Plotting Functions

The author/maintainer Jim Lemon died in September 2023. Currently the package is being maintained by Duncan Murdoch.


:::::

A.18 rgl

rgl: 3D Visualization Using OpenGL


Package Profile A.18: {rgl}: 3D Visualization Using OpenGL

{rgl}: 3D Visualization Using OpenGL (Murdoch and Adler 2024)

(There is no hexagon logo for {rgl} available)

Provides medium to high level functions for 3D interactive graphics, including functions modelled on base graphics (plot3d(), etc.) as well as functions for constructing representations of geometric objects (cube3d(), etc.). Output may be on screen using OpenGL, or to various standard 3D file formats including WebGL, PLY, OBJ, STL as well as 2D image formats, including PNG, Postscript, SVG, PGF.

Features

  • portable R package using OpenGL (if available) on macOS, Win32 and X11
  • can produce 3D graphics in web pages using WebGL
  • R programming interface
  • interactive viewpoint navigation
  • automatic data focus
  • geometry primitives: points, lines, triangles, quads, texts, point sprites
  • high-level geometry: surface, spheres
  • up to 8 light sources
  • alpha-blending (transparency)
  • side-dependent fill-mode rendering (dots, wired and filled)
  • texture-mapping with mipmapping and environment mapping support
  • environmental effects: fogging, background sphere
  • bounding box with axis ticks marks
  • undo operation: shapes and light-sources are managed on type stacks, where the top-most objects can be popped, or any item specified by an identifier can be removed

System requirements

  • OpenGL and
  • GLU Library (Required for display in R. [for Windows, but not for MacOS???] See “Installing OpenGL support” in README.md. Not needed if only browser displays using rglwidget() are wanted.) See For WebGL display to get browser with WebGL enabled.
  • zlib (optional),
  • libpng (>=1.2.9, optional),
  • FreeType (optional).


A.19 skimr

skimr: Compact and Flexible Summaries of Data


Package Profile A.19: A Package for Compact and Flexible Summaries of Data

{skimr}: Compact and Flexible Summaries of Data

A simple to use summary function that can be used with pipes and displays nicely in the console. The default summary statistics may be modified by the user as can the default formatting. Support for data frames and vectors is included, and users can implement their own skim methods for specific object types as described in a vignette. Default summaries include support for inline spark graphs. Instructions for managing these on specific operating systems are given in the Using skimr vignette and the README.

At the moment I am just using the skimr::skim() function. I believe most of the many other functions for adaption are oriented to developers. But still: I need to have a closer look to this package.