Preprint
Machine Learning
Featured

performance: An R Package for Assessment, Comparison and Testing of Statistical Models

Daniel Lüdecke(Universität Hamburg), Mattan S. Ben‐Shachar(Ben-Gurion University of the Negev), Indrajeet Patil(Max Planck Institute for Human Development), Philip Waggoner(University of Chicago), Dominique Makowski(Nanyang Technological University)
April 21, 2021The Journal of Open Source Software5,743 citations

5.7k

Citations

540

Influential Citations

The Journal of Open Source Software

Venue

2021

Year

Abstract

A crucial part of statistical analysis is evaluating a model's quality and fit, or performance.During analysis, especially with regression models, investigating the fit of models to data also often involves selecting the best fitting model amongst many competing models.Upon investigation, fit indices should also be reported both visually and numerically to bring readers in on the investigative effort.The performance R-package (R Core Team, 2021) provides utilities for computing measures to assess model quality, many of which are not directly provided by R's base or stats packages.These include measures like R 2 , intraclass correlation coefficient (ICC), root mean squared error (RMSE), or functions to check for vexing issues like overdispersion, singularity, or zeroinflation.These functions support a large variety of regression models including generalized linear models, (generalized) mixed-effects models, their Bayesian cousins, and many others. Statement of NeedWhile functions to build and produce diagnostic plots or to compute fit statistics exist, these are located across many packages, which results in a lack of a unique and consistent approach to assess the performance of many types of models.The result is a difficult-to-navigate, unorganized ecosystem of individual packages with different syntax, making it onerous for researchers to locate and use fit indices relevant for their unique purposes.The performance package in R fills this gap by offering researchers a suite of intuitive functions with consistent syntax for computing, building, and presenting regression model fit statistics and visualizations.performance is part of the easystats ecosystem, which is a collaborative project focused on facilitating simple and intuitive usage of R for statistical analysis (Ben-Shachar et al.,

Analysis

Why This Paper Matters

The performance R package addresses a long-standing pain point in statistical modeling: the fragmented and inconsistent landscape of tools for assessing model quality. Before its release, researchers had to navigate a bewildering array of packages, each with its own syntax and conventions, to compute fit indices like R², ICC, or RMSE. This fragmentation made model evaluation time-consuming and error-prone, particularly when comparing models across different classes (e.g., linear, mixed-effects, Bayesian). By offering a unified, intuitive interface, performance significantly lowers the barrier to rigorous model assessment.

Moreover, the package's integration into the broader easystats ecosystem signals a shift toward more cohesive and user-friendly statistical software in R. This is especially important as modern research increasingly relies on complex models that require careful diagnostics. The ability to easily check for issues like overdispersion, singularity, or zero-inflation helps prevent misleading conclusions and promotes better statistical practice. In an era of reproducibility concerns, tools that standardize and simplify model evaluation are invaluable.

Technical Contributions

  • Unified API for fit indices: Provides consistent functions to compute R², ICC, RMSE, and many other metrics across a wide range of model types, including GLMs, mixed-effects models, and Bayesian models.
  • Diagnostic utilities: Includes functions to detect common modeling problems such as overdispersion, singularity, and zero-inflation, which are often overlooked in applied work.
  • Broad model support: Extends beyond standard regression to handle (generalized) linear mixed models, Bayesian counterparts, and other specialized models.
  • Visualization tools: Enables both numerical and graphical presentation of fit statistics, facilitating communication of model performance.
  • Ecosystem integration: Designed as part of the easystats suite, ensuring interoperability with other packages for data analysis and reporting.

Results

As a software paper, the primary "result" is the package itself. The authors report that performance successfully consolidates scattered functionality into a single, coherent package, thereby reducing the cognitive and technical burden on researchers. While no quantitative benchmarks are provided, the package's adoption—evidenced by over 5,700 citations—demonstrates its practical utility and acceptance. It enables users to compute fit measures that are not directly available in R's base or stats packages, filling a critical gap.

Significance

The performance package has had a substantial impact on the practice of statistical modeling in R. By making model assessment more accessible and consistent, it empowers researchers to make better-informed decisions when selecting and evaluating models. This, in turn, enhances the reliability of statistical findings across fields such as psychology, ecology, and social sciences. The package's success also highlights the value of collaborative, ecosystem-based software development in the open-source community. As AI and machine learning continue to intersect with traditional statistics, tools like performance will remain essential for ensuring that models are not only predictive but also well-calibrated and interpretable.