Software

R packages

Require

A simple package for reproducible package management in R.

This is an all-in-one package manager that is simple and focused around a single function, Require. This is different than other approaches to package management such as packrat, checkpoint, and renv as it focuses on a “script-based” solution to a reproducible work flow. Thus, all packages, version numbering, and sources are contained within an R script.

View on CRAN; GitHub; Website

SpaDES

Develop and Run Spatially Explicit Discrete Event Simulation Models

Metapackage for implementing a variety of event-based models, with a focus on spatially explicit models. These include raster-based, event-based, and agent-based models. The core simulation components (provided by SpaDES.core) are built upon a discrete event simulation (DES) framework that facilitates modularity, and easily enables the user to include additional functionality by running user-built simulation modules (see also SpaDES.tools). Included are numerous tools to visualize rasters and other maps (via quickPlot), and caching methods for reproducible simulations (via reproducible). Additional functionality is provided by the SpaDES.addins and SpaDES.shiny packages.

View on CRAN; GitHub; Website

See also:

quickPlot

A System of Plotting Optimized for Speed and Modularity

A high-level plotting system, built using grid graphics, that is optimized for speed and modularity. This has great utility for quick visualizations when testing code, with the key benefit that visualizations are updated independently of one another.

View on CRAN; GitHub; Website

reproducible

A set of tools for R that enhance reproducibility beyond package management.

Built on top of git2r and archivist, this package aims at making high-level, robust, machine and OS independent tools for making deeply reproducible and reusable content in R. This extends beyond the package management utilites of packrat and checkpoint by including tools for caching and accessing GitHub repositories.

View on CRAN; GitHub; Website

fpCompare

Reliable Comparison of Floating Point Numbers

Comparisons of floating point numbers are problematic due to errors associated with the binary representation of decimal numbers. Despite being aware of these problems, people still use numerical methods that fail to account for these and other rounding errors (this pitfall is the first to be highlighted in Circle 1 of Burns (2012) The R Inferno). This package provides new relational operators useful for performing floating point number comparisons with a set tolerance.

View on CRAN; GitHub; Website

NetLogoR

A port of NetLogo functions and language to R

NetLogoR is an R package which aims to help translating agent-based models built in NetLogo (Wilensky, 1999) into R or help directly with creating new agent-based models in R following the NetLogo framework.

NetLogoR provides the necessary NetLogo’s primitives as well as complementary functions to build agent-based models. A programming guide derived from the NetLogo’s Programming Guide is available.

This package is under construction and therefore function errors and mismatches with the documentation may occur.

View on CRAN; GitHub; Website