Archetypes for Targets
Function-oriented Make-like declarative workflows for Statistics and data science are supported in the targets R package. As an extension to targets, the tarchetypes package provides convenient user-side functions to make targets easier to use. By establishing reusable archetypes for common kinds of targets and pipelines, these functions help express complicated reproducible workflows concisely and compactly. The methods in this package were influenced by the drake R package by Will Landau (2018) doi:10.21105/joss.00550.
View DocumentationDynamic Function-Oriented Make-Like Declarative Workflows
As a pipeline toolkit for Statistics and data science in R, the targets package brings together function-oriented programming and Make-like declarative workflows. It analyzes the dependency relationships among the tasks of a workflow, skips steps that are already up to date, runs the necessary computation with optional parallel workers, abstracts files as R objects, and provides tangible evidence that the results match the underlying code and data. The methodology in this package borrows from GNU Make (2015, ISBN:978-9881443519) and drake (2018, doi:10.21105/joss.00550).
View DocumentationCasts (R)Markdown Files to XML and Back Again
Casts (R)Markdown files to XML and back to allow their editing via XPath.
View DocumentationHelper for rOpenSci Package Developpers
Provides helpers for rOpenSci package developpers, mostly helping with metadata management (badges, DESCRIPTION) and GitHub infrastructure (GitHub issue and PR templates).
View DocumentationSimple Git Client for R
Simple git client for R based on libgit2 with support for SSH and HTTPS remotes. All functions in gert use basic R data types (such as vectors and data-frames) for their arguments and return values. User credentials are shared with command line git through the git-credential store and ssh keys stored on disk or ssh-agent.
View DocumentationBEAUti from R
BEAST2 (https://www.beast2.org) is a widely used Bayesian phylogenetic tool, that uses DNA/RNA/protein data and many model priors to create a posterior of jointly estimated phylogenies and parameters. BEAUti 2 (which is part of BEAST2) is a GUI tool that allows users to specify the many possible setups and generates the XML file BEAST2 needs to run. This package provides a way to create BEAST2 input files without active user input, but using R function calls instead.
View DocumentationCI-Agnostic Workflow Definitions
Provides a way to describe common build and deployment workflows for R-based projects: packages, websites (e.g. blogdown, pkgdown), or data processing (e.g. research compendia). The recipe is described independent of the continuous integration tool used for processing the workflow (e.g. GitHub Actions or Circle CI). This package has been peer-reviewed by rOpenSci (v0.3.0.9004).
View DocumentationCompact 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.
Scientific use casesCall BEAST2
BEAST2 (https://www.beast2.org) is a widely used Bayesian phylogenetic tool, that uses DNA/RNA/protein data and many model priors to create a posterior of jointly estimated phylogenies and parameters. BEAST2 is a command-line tool. This package provides a way to call BEAST2 from an R function call.
View DocumentationWorking with Sets the Tidy Way
Implements a class and methods to work with sets, doing intersection, union, complementary sets, power sets, cartesian product and other set operations in a “tidy” way. These set operations are available for both classical sets and fuzzy sets. Import sets from several formats or from other several data structures.
View DocumentationAn R Client for the ODK Central API
Access and tidy up data from the ODK Central API.
ODK Central is a clearinghouse for digitally captured data
https://docs.getodk.org/central-intro/.
The ODK Central API is documented at https://odkcentral.docs.apiary.io/.
Straightforward BibTeX and BibLaTeX Bibliography Management
Provides tools for importing and working with bibliographic references. It greatly enhances the bibentry class by providing a class BibEntry which stores BibTeX and BibLaTeX references, supports UTF-8 encoding, and can be easily searched by any field, by date ranges, and by various formats for name lists (author by last names, translator by full names, etc.). Entries can be updated, combined, sorted, printed in a number of styles, and exported. BibTeX and BibLaTeX .bib files can be read into R and converted to BibEntry objects. Interfaces to NCBI Entrez, CrossRef, and Zotero are provided for importing references and references can be created from locally stored PDF files using Poppler. Includes functions for citing and generating a bibliography with hyperlinks for documents prepared with RMarkdown or RHTML.
View DocumentationConvert Antipsychotic Doses to Chlorpromazine Equivalents
As different antipsychotic medications have different potencies, the doses of different medications cannot be directly compared. Various strategies are used to convert doses into a common reference so that comparison is meaningful. Chlorpromazine (CPZ) has historically been used as a reference medication into which other antipsychotic doses can be converted, as “chlorpromazine-equivalent doses”. Using conversion keys generated from widely-cited scientific papers, e.g. Gardner et. al 2010 doi:10.1176/appi.ajp.2009.09060802 and Leucht et al. 2016 doi:10.1093/schbul/sbv167, antipsychotic doses are converted to CPZ (or any specified antipsychotic) equivalents. The use of the package is described in the included vignette. Not for clinical use.
Scientific use casesValidate JSON Schema
Uses the node library is-my-json-valid or ajv to validate JSON against a JSON schema. Drafts 04, 06 and 07 of JSON schema are supported.
View DocumentationA Pipeline Toolkit for Reproducible Computation at Scale
A general-purpose computational engine for data analysis, drake rebuilds intermediate data objects when their dependencies change, and it skips work when the results are already up to date. Not every execution starts from scratch, there is native support for parallel and distributed computing, and completed projects have tangible evidence that they are reproducible. Extensive documentation, from beginner-friendly tutorials to practical examples and more, is available at the reference website https://docs.ropensci.org/drake/ and the online manual https://books.ropensci.org/drake/.
View DocumentationMake Fake Data
Make fake data, supporting addresses, person names, dates, times, colors, coordinates, currencies, digital object identifiers (DOIs), jobs, phone numbers, DNA sequences, doubles and integers from distributions and within a range.
View DocumentationInstall BEAST2 Packages
BEAST2 (https://www.beast2.org) is a widely used Bayesian phylogenetic tool, that uses DNA/RNA/protein data and many model priors to create a posterior of jointly estimated phylogenies and parameters. BEAST2 is commonly accompanied by BEAUti 2 (https://www.beast2.org), which, among others, allows one to install BEAST2 package. This package allows to install BEAST2 packages from R.
View DocumentationModel Comparison Using babette
BEAST2 (https://www.beast2.org) is a widely used Bayesian phylogenetic tool, that uses DNA/RNA/protein data and many model priors to create a posterior of jointly estimated phylogenies and parameters. mcbette allows to do a Bayesian model comparison over some site and clock models, using babette (https://github.com/ropensci/babette/).
View DocumentationSetup, Run and Analyze NetLogo Model Simulations from R via XML
Setup, run and analyze NetLogo (https://ccl.northwestern.edu/netlogo/) model simulations in R. nlrx experiments use a similar structure as NetLogos Behavior Space experiments. However, nlrx offers more flexibility and additional tools for running and analyzing complex simulation designs and sensitivity analyses. The user defines all information that is needed in an intuitive framework, using class objects. Experiments are submitted from R to NetLogo via XML files that are dynamically written, based on specifications defined by the user. By nesting model calls in future environments, large simulation design with many runs can be executed in parallel. This also enables simulating NetLogo experiments on remote high performance computing machines. In order to use this package, Java and NetLogo (>= 5.3.1) need to be available on the executing system.
Scientific use casesAssertive Programming for R Analysis Pipelines
Provides functionality to assert conditions that have to be met so that errors in data used in analysis pipelines can fail quickly. Similar to stopifnot() but more powerful, friendly, and easier for use in pipelines.
Scientific use casesTime Travel to Test Time Dependent Code
Time travel to test time dependent code.
View DocumentationTime Classes
Time classes, with hooks for mocking time.
View DocumentationControl BEAST2
BEAST2 (https://www.beast2.org) is a widely used Bayesian phylogenetic tool, that uses DNA/RNA/protein data and many model priors to create a posterior of jointly estimated phylogenies and parameters. BEAST2 is commonly accompanied by BEAUti 2, Tracer and DensiTree. babette provides for an alternative workflow of using all these tools separately. This allows doing complex Bayesian phylogenetics easily and reproducibly from R.
View DocumentationProvides Access to Git Repositories
Interface to the libgit2 library, which is a pure C implementation of the Git core methods. Provides access to Git repositories to extract data and running some basic Git commands.
Scientific use casesKeep a Collection of Sparkly Data Resources
Tools to get and maintain a data repository from third-party data providers.
View DocumentationAvoid the Typical Working Directory Pain When Using knitr
An extension of knitr that adds flexibility in several ways. One common source of frustration with knitr is that it assumes the directory where the source file lives should be the working directory, which is often not true. ezknitr addresses this problem by giving you complete control over where all the inputs and outputs are, and adds several other convenient features to make rendering markdown/HTML documents easier.
View DocumentationR Bindings for ZeroMQ
Interface to the ZeroMQ lightweight messaging kernel (see http://www.zeromq.org/ for more information).
View DocumentationRead, Tidy, and Display Data from Microtiter Plates
Tools for interacting with data from experiments done in microtiter plates. Easily read in plate-shaped data and convert it to tidy format, combine plate-shaped data with tidy data, and view tidy data in plate shape.
View DocumentationInterface to the Open Science Framework (OSF)
An interface for interacting with OSF (https://osf.io). osfr enables you to access open research materials and data, or create and manage your own private or public projects.
Scientific use casesAAPOR Survey Outcome Rates
Standardized survey outcome rate functions, including the response rate, contact rate, cooperation rate, and refusal rate. These outcome rates allow survey researchers to measure the quality of survey data using definitions published by the American Association of Public Opinion Research (AAPOR). For details on these standards, see AAPOR (2016) https://www.aapor.org/Standards-Ethics/Standard-Definitions-(1).aspx.
View DocumentationInstall and Run Programs, Outside of R, Inside of R
Install and run external command-line programs in R through use of Docker https://www.docker.com/ and online repositories.
View DocumentationTracer from R
BEAST2 (https://www.beast2.org) is a widely used Bayesian phylogenetic tool, that uses DNA/RNA/protein data and many model priors to create a posterior of jointly estimated phylogenies and parameters. Tracer (https://tree.bio.ed.ac.uk/software/tracer/) is a GUI tool to parse and analyze the files generated by BEAST2. This package provides a way to parse and analyze BEAST2 input files without active user input, but using R function calls instead.
View DocumentationCreate Useful .gitignore Files for your Project
Simple interface to query gitignore.io to fetch gitignore templates that can be included in the .gitignore file. More than 450 templates are currently available.
View DocumentationLabel Creation for Tracking and Collecting Data from Biological Samples
Tools to generate unique identifier codes and printable barcoded labels for the management of biological samples. The creation of unique ID codes and printable PDF files can be initiated by standard commands, user prompts, or through a GUI addin for R Studio. Biologically informative codes can be included for hierarchically structured sampling designs.
Scientific use casesSimple Jenkins Client for R
Manage jobs and builds on your Jenkins CI server https://jenkins.io/. Create and edit projects, schedule builds, manage the queue, download build logs, and much more.
View DocumentationManage Cached Files
Suite of tools for managing cached files, targeting use in other R packages. Uses rappdirs for cross-platform paths. Provides utilities to manage cache directories, including targeting files by path or by key; cached directories can be compressed and uncompressed easily to save disk space.
View DocumentationA Flexible Container to Transport and Manipulate Data and Associated Resources
Provides a flexible container to transport and manipulate complex sets of data. These data may consist of multiple data files and associated meta data and ancillary files. Individual data objects have associated system level meta data, and data files are linked together using the OAI-ORE standard resource map which describes the relationships between the files. The OAI- ORE standard is described at https://www.openarchives.org/ore/. Data packages can be serialized and transported as structured files that have been created following the BagIt specification. The BagIt specification is described at https://tools.ietf.org/html/draft-kunze-bagit-08.
View DocumentationControl How Many Times Conditions are Thrown
Provides ability to control how many times in function calls conditions are thrown (shown to the user). Includes control of warnings and messages.
View DocumentationClient for the cranchecks.info API
Client for the cranchecks.info API.
View DocumentationConstruct Reproducible Analytic Data Sets as R Packages
A framework to help construct R data packages in a reproducible manner. Potentially time consuming processing of raw data sets into analysis ready data sets is done in a reproducible manner and decoupled from the usual R CMD build process so that data sets can be processed into R objects in the data package and the data package can then be shared, built, and installed by others without the need to repeat computationally costly data processing. The package maintains data provenance by turning the data processing scripts into package vignettes, as well as enforcing documentation and version checking of included data objects. Data packages can be version controlled in github, and used to share data for manuscripts, collaboration and general reproducibility.
Scientific use casesConvert Complex Objects to and from R Data Structures
Convert complex objects to and from R data structures.
View DocumentationWork with GitHub Gists
Work with GitHub gists from R (e.g., https://en.wikipedia.org/wiki/GitHub#Gist, https://docs.github.com/en/github/writing-on-github/creating-gists/). A gist is simply one or more files with code/text/images/etc. This package allows the user to create new gists, update gists with new files, rename files, delete files, get and delete gists, star and un-star gists, fork gists, open a gist in your default browser, get embed code for a gist, list gist commits, and get rate limit information when authenticated. Some requests require authentication and some do not. Gists website: https://gist.github.com/.
View DocumentationTools for Managing SSH and Git Credentials
Setup and retrieve HTTPS and SSH credentials for use with git and other services. For HTTPS remotes the package interfaces the git-credential utility which git uses to store HTTP usernames and passwords. For SSH remotes we provide convenient functions to find or generate appropriate SSH keys. The package both helps the user to setup a local git installation, and also provides a back-end for git/ssh client libraries to authenticate with existing user credentials.
View DocumentationFast, Consistent Tokenization of Natural Language Text
Convert natural language text into tokens. Includes tokenizers for shingled n-grams, skip n-grams, words, word stems, sentences, paragraphs, characters, shingled characters, lines, tweets, Penn Treebank, regular expressions, as well as functions for counting characters, words, and sentences, and a function for splitting longer texts into separate documents, each with the same number of words. The tokenizers have a consistent interface, and the package is built on the stringi and Rcpp packages for fast yet correct tokenization in UTF-8.
Scientific use casesBase Package for Outsider
Base package for outsider https://github.com/ropensci/outsider. The outsider package and its sister packages enable the installation and running of external, command-line software within R. This base package is a key dependency of the user-facing outsider package as it provides the utilities for interfacing between Docker https://www.docker.com and R. It is intended that end-users of outsider do not directly work with this base package.
View DocumentationA Tool for Writing Cleaner, More Transparent Code
To create clearer, more concise code provides this toolbox helps coders to isolate the essential parts of a script that produces a chosen result, such as an object, tables and figures written to disk.
View DocumentationBuild outsider Modules
Developer functions and resources for building outsider modules.
View Documentation