# FP

##### Fractional Polynomials

Fractional polynomials transformation for continuous covariates.

- Keywords
- datagen

##### Usage

`FP(x, p = c(-2, -1, -0.5, 0.5, 1, 2, 3), scaling = TRUE)`

##### Arguments

- x
a numeric vector.

- p
all powers of

`x`

to be included.- scaling
a logical indicating if the measurements are scaled prior to model fitting.

##### Details

A fractional polynomial refers to a model \(\sum_{j = 1}^k (\beta_j x^{p_j} + \gamma_j x^{p_j} \log(x)) + \beta_{k + 1} \log(x) + \gamma_{k + 1} \log(x)^2\), where the degree of the fractional polynomial is the number of non-zero regression coefficients \(\beta\) and \(\gamma\).

##### Value

A matrix including all powers `p`

of `x`

,
all powers `p`

of `log(x)`

, and `log(x)`

.

##### References

Willi Sauerbrei and Patrick Royston (1999), Building multivariable prognostic and
diagnostic models: transformation of the predictors by using fractional polynomials.
*Journal of the Royal Statistical Society A*, **162**, 71--94.

##### See Also

`gamboost`

to fit smooth models, `bbs`

for P-spline base-learners

##### Examples

```
# NOT RUN {
data("bodyfat", package = "TH.data")
tbodyfat <- bodyfat
### map covariates into [1, 2]
indep <- names(tbodyfat)[-2]
tbodyfat[indep] <- lapply(bodyfat[indep], function(x) {
x <- x - min(x)
x / max(x) + 1
})
### generate formula
fpfm <- as.formula(paste("DEXfat ~ ",
paste("FP(", indep, ", scaling = FALSE)", collapse = "+")))
fpfm
### fit linear model
bf_fp <- glmboost(fpfm, data = tbodyfat,
control = boost_control(mstop = 3000))
### when to stop
mstop(aic <- AIC(bf_fp))
plot(aic)
### coefficients
cf <- coef(bf_fp[mstop(aic)])
length(cf)
cf[abs(cf) > 0]
# }
```

*Documentation reproduced from package mboost, version 2.9-1, License: GPL-2*