hardhat is a developer focused package designed to ease the creation of new modeling packages, while simultaneously promoting good R modeling package standards as laid out by the set of opinionated Conventions for R Modeling Packages.
hardhat has four main goals:
Provide one source of truth for common input validation functions, such as checking if new data at prediction time contains the same required columns used at fit time.
Provide extra utility functions for additional common tasks, such as adding intercept columns, standardizing
predict() output, and extracting valuable class and factor level information from the predictors.
The idea is to reduce the burden of creating a good modeling interface as much as possible, and instead let the package developer focus on writing the core implementation of their new model. This benefits not only the developer, but also the user of the modeling package, as the standardization allows users to build a set of “expectations” around what any modeling function should return, and how they should interact with it.
You can install the released version of hardhat from CRAN with:
And the development version from GitHub with:
# install.packages("devtools") devtools::install_github("tidymodels/hardhat")
To learn about how to use hardhat, check out the vignettes: