Multivariable fractional polynomial algorithm simultaneously selects variables and functional forms in both generalized linear models and Cox proportional hazard models. Key references are Royston and Altman (1994)
mfp2mfp2 implements multivariable fractional polynomial (MFP) models and various
extensions. It allows the selection of variables and functional forms when
modelling the relationship of a data matrix x and some outcome y. Currently, it
supports generalized linear models and Cox proportional hazards models.
Additionally, it has the ability to model a sigmoid relationship between covariate x and an outcome variable y
using approximate cumulative distribution (ACD) transformation- a feature that a standard fractional polynomial function cannot achieve.
mfp2 closely emulates the functionality of the mfp and mfpa package in Stata.
It augments the functionality of the existing mfp package in R by:
# Install the development version from GitHub
# install.packages("pak")
pak::pak("EdwinKipruto/mfp2")
# or
# install.packages("remotes")
remotes::install_github("EdwinKipruto/mfp2")
To learn more about the MFP algorithm, a good place to start is the book by Royston, P. and Sauerbrei, W., 2008. Multivariable Model - Building: A Pragmatic Approach to Regression Analysis based on Fractional Polynomials for Modelling Continuous Variables. John Wiley & Sons.
For insights into the ACD transformation, please refer to Royston (2014). A smooth covariate rank transformation for use in regression models with a sigmoid dose–response function. The Stata Journal