Noah Greifer Noah Greifer Noah Greifer
  • Home
  • Blog
  • Software
  • Papers

Software

This page documents the R packages I have worked on. If you have any questions about them, please submit your question to their GitHub issues page rather than emailing me. You are also welcome to ask a question on StackOverflow or CrossValidated, which I check often.

  • My packages
  • Other packages

These packages are ones that I am a primary author on and have expertise on the methods implemented. I consider these packages to be “mine”, at least partly, in the sense that I can speak not only on the implementation but on the methods as well.

cobalt logo
cobalt

Covariate Balance Tables and Plots

Numerically and graphically assesses the similarity between groups in observational studies before and after matching and weighting. Includes support for the output of many R packages for matching and weighting, as well as multiply imputed, longitudinal, and nested data and multi-category and continuous treatments.

cobalt sample output
Noah Greifer
GitHub CRAN Docs
WeightIt logo
WeightIt

Weighting for Covariate Balance in Observational Studies

Estimates balancing weights for causal effect estimation in observational studies with binary, multi-category, or continuous point or longitudinal treatments. Available methods include those that rely on parametric modeling, optimization, and machine learning. Methods for estimating weighted regression models that take into account uncertainty in the estimation of the weights via M-estimation or bootstrapping are available.

Noah Greifer
GitHub CRAN Docs
MatchIt logo
MatchIt

Nonparametric Preprocessing for Parametric Causal Inference

Performs matching for causal effect estimation in observational studies with binary treatments. Several matching methods are available, including nearest neighbor matching, optimal pair matching, optimal full matching, generalized full matching, genetic matching, exact matching, coarsened exact matching, cardinality matching, and subclassification, some of which rely on functions from other R packages. A variety of methods to estimate propensity scores for propensity score matching are included.

MatchIt sample output
Daniel Ho, Kosuke Imai, Gary King, Elizabeth Stuart, Noah Greifer
GitHub CRAN Docs
optweight logo
optweight

Optimization-Based Stable Balancing Weights

Uses optimization to estimate weights that balance covariates for binary, multi-category, continuous, and multivariate treatments. The degree of balance and the desired target moments can be specified for each covariate. In addition, sampling weights can be estimated that allow a sample to generalize to a population specified with given target moments of covariates, as in matching-adjusted indirect comparison (MAIC).

Noah Greifer
GitHub CRAN Docs
adrftools

Estimating, Visualizing, and Testing Average Dose-Response Functions

Facilitates estimating, visualizing, and testing average dose-response functions (ADRFs) for characterizing the causal effect of a continuous (i.e., non-discrete) treatment or exposure. Includes support for frequentist and Bayesian regression models, analytical and bootstrap inference, and characterization of subgroup effects.

adrftools sample output
Noah Greifer
GitHub CRAN Docs
MatchThem logo
MatchThem

Matching and Weighting Multiply Imputed Datasets

Contains wrapper functions for using MatchIt and WeightIt with multiply imputed datasets, including fitting models to the matched or weighted imputed data and pooling the resulting estimates according to Rubin's rules.

Farhad Pishgar, Noah Greifer
GitHub CRAN
fwb

Fractional Weighted Bootstrap

Implements the fractional weighted bootstrap to be used as a drop-in for functions in the boot package. The fractional weighted bootstrap (also known as the Bayesian bootstrap) involves drawing weights randomly that are applied to the data rather than resampling units from the data.

Noah Greifer
GitHub CRAN Docs
arg

Clean and Simple Argument Checking

Checks function arguments, ideally for use in R packages, using a simple interface and produces clean, informative error messages with cli.

Noah Greifer
GitHub CRAN Docs
clarify

Simulation-Based Inference for Regression Models

Performs simulation-based inference as an alternative to the delta method for obtaining valid confidence intervals and p-values for regression post-estimation quantities, such as average marginal effects and predictions at representative values. This framework for simulation-based inference is especially useful when the resulting quantity is not normally distributed and the delta method approximation fails.

clarify sample output
Noah Greifer, Steven Worthington, Stefano Iacus, Gary King
GitHub CRAN Docs
MatchingFrontier

Computation of the Balance-Sample Size Frontier in Matching Methods for Causal Inference

Returns the subset of the data with the minimum imbalance for every possible subset size, down to the data set with the minimum possible imbalance. Also includes tools for the estimation of causal effects for each subset size, functions for visualization and data export, and functions for calculating model dependence.

MatchingFrontier sample output
Gary King, Christopher Lucas, Richard Nielsen, Noah Greifer
GitHub Docs
lmw

Linear Model Weights

Computes the implied weights of linear regression models for estimating average causal effects and provides diagnostics based on these weights to diagnose representativeness, balance, extrapolation, and influence for these models, clarifying the target population of inference. Tools are also available to simplify estimating treatment effects for specific target populations of interest.

lmw sample output
Noah Greifer
GitHub CRAN
No matching items

These packages are ones that I have developed as part of my job but which I don’t consider “mine” in the sense that I am not the primary maintainer and I don’t have expertise on the methods implemented. Please do not contact me about these packages.

devMSMs logo
devMSMs

Implementing Marginal Structural Models with Longitudinal Data

Provides tools for implementing a workflow to estimate longitudinal effects of treatments using marginal structural models in developmental psychology.

devMSMs sample output
Isabella Stallworthy, Noah Greifer, Meriah DeJoseph, Emily Padrutt, Kyle Butts, Daniel Berry
GitHub Docs
apm

Averaged Prediction Models

In panel data settings, specifies set of candidate models, fits them to data from pre-treatment validation periods, and selects model as average over candidate models, weighting each by posterior probability of being most robust given its differential average prediction errors in pre-treatment validation periods. Subsequent estimation and inference of causal effect's bounds accounts for both model and sampling uncertainty, and calculates the robustness changepoint value at which bounds go from excluding to including 0. The package also includes a range of diagnostic plots, such as those illustrating models' differential average prediction errors and the posterior distribution of which model is most robust.

apm sample output
Thomas Leavitt, Laura Hatfield, Noah Greifer
GitHub CRAN Docs
EvoPhylo

Pre- And Postprocessing of Morphological Data from Relaxed Clock Bayesian Phylogenetics

Performs automated morphological character partitioning for phylogenetic analyses and analyzes macroevolutionary parameter outputs from clock (time-calibrated) Bayesian inference analyses.

EvoPhylo sample output
Tiago Simões, Noah Greifer, Joelle Barido-Sottani, Stephanie Pierce
GitHub CRAN Docs
Morphoscape

Computation and Visualization of Adaptive Landscapes

Implements adaptive landscape methods for the integration, analysis and visualization of biological trait data on a phenotypic morphospace, typically defined by shape metrics.

Morphoscape sample output
Blake Dickson, Stephanie Pierce, Noah Greifer
GitHub CRAN Docs
MorphoRegions

Analysis of Regionalization Patterns in Serially Homologous Structures

Computes the optimal number of regions (or subdivisions) and their position in serial structures without a priori assumptions and to visualize the results. After reducing data dimensionality with the built-in function for data ordination, regions are fitted as segmented linear regressions along the serial structure. Every region boundary position and increasing number of regions are iteratively fitted and the best model (number of regions and boundary positions) is selected with an information criterion.

MorphoRegions sample output
Amandine Gillet, Katrina Jones, Noah Greifer, Stephanie Pierce
GitHub CRAN Docs
sim.BA

Simulation-Based Bias Analysis for Observational Studies

Conducts a simulation based quantitative bias analysis using covariate structures generated with individual-level data to characterize the bias arising from unmeasured confounding. Users can specify their desired data generating mechanisms to simulate data and quantitatively summarize findings in an end-to-end application.

sim.BA sample output
Rishi Desai, Noah Greifer
CRAN
netlit logo
netlit

Augment a literature review with network analysis statistics

Aids in performing network analysis for literature reviews by processing data sets containing directed edges and producing objects that can be readily used with igraph and other network graph-based tools for visualization and analysis.

netlit sample output
Devin Judge-Lord, Noah Greifer
GitHub Docs
No matching items
Noah Greifer ©

Build on Quarto Academic Website Template adapted by Dr. Gang He