# flamdof: Calculate Degrees of Freedom for Fused Lasso Additive Model In flam: Fits Piecewise Constant Models with Data-Adaptive Knots

## Description

This function calculates the degrees of freedom for a fused lasso additive model fit using `flam`.

## Usage

 `1` ```flamDOF(object, index) ```

## Arguments

 `object` an object of the class "flam". `index` the index for the model of interest. Note that `index` of i corresponds to the model with tuning parameters `object\$all.alpha[i]` and `object\$all.lambda[i]`.

## Details

The degrees of freedom for FLAM were derived in Section 4.1 of Petersen, A., Witten, D., and Simon, N. (2014). Fused Lasso Additive Model. arXiv preprint arXiv:1409.5391.

## Value

The degrees of freedom for the specified model.

Ashley Petersen

## References

Petersen, A., Witten, D., and Simon, N. (2014). Fused Lasso Additive Model. arXiv preprint arXiv:1409.5391.

## Examples

 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20``` ```#See ?'flam-package' for a full example of how to use this package #generate data #note: use larger 'n' for more reasonable results set.seed(1) data <- sim.data(n = 20, scenario = 1, zerof = 10, noise = 1) #fit model for a range of tuning parameters flam.out <- flam(x = data\$x, y = data\$y) #or fit model and select tuning parameters using 2-fold cross-validation #note: use larger 'n.fold' (e.g., 10) in practice flamCV.out <- flamCV(x = data\$x, y = data\$y, n.fold = 2) #calculate degrees of freedom for the model chosen using cross-validation flamDOF(object = flamCV.out\$flam.out, index = flamCV.out\$index.cv) #or for any fit from a 'flam' object flamDOF(object = flam.out, index = 25) flamDOF(object = flamCV.out\$flam.out, index = 25) #which corresponds to lambda and alpha of flam.out\$all.lambda[25]; flam.out\$all.alpha[25] ```

flam documentation built on May 2, 2019, 8:27 a.m.