# Automatically conducts Liso fits

### Description

An automatic CV and fitting wrapper for Liso.

### Usage

1 |

### Arguments

`x` |
Design matrix (without intercept). |

`y` |
Response value. |

`adaptive` |
If TRUE, conduct an adaptive liso type procedure. Otherwise just do the raw liso fits. |

`lambda` |
Value of the penalty parameter lambda. Default is NULL, specifying repeated cross-validations. Can be a vector, in which case each term gives the lambda for each step of the adaptive procedure. |

`monotone` |
Monotonicity pattern. Default is NULL, specifying a sign-discovery procedure, or non-monotone fitting if |

`control` |
Optional additional arguments to be passed to the cross-validation or backfitting, as a two field list. Each of |

### Details

This function is a convenient wrapper for the liso functions that automates the process of CV and fitting or adaptive fitting.

### Value

A `lisofit`

object is returned to represent the fit, which inherits from class `multistep`

. `plot`

, `summary`

, `print`

, ``*``

and other methods exist.

### Author(s)

Zhou Fang

### References

Zhou Fang and Nicolai Meinshausen (2009),
*Liso for High Dimensional Additive Isotonic Regression*, available at
http://blah.com

### See Also

`liso.backfit`

, `cv.liso`

### Examples

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | ```
## Use the method on a simulated data set
set.seed(79)
n <- 100; p <- 50
## Simulate design matrix and response
x <- matrix(runif(n * p, min = -2.5, max = 2.5), nrow = n, ncol = p)
y <- scale(3 * (x[,1]> 0), scale=FALSE) + x[,2]^3 + rnorm(n)
## Do a single prespecified fit
fit1 = liso(x,y, FALSE, 4, TRUE)
plot(fit1, dims=1:2)
## Do a cross-validated fit constrained to be monotone increasing
fit2 = liso(x,y, FALSE, monotone=TRUE)
plot(fit2, dims=1:2)
## Do an adaptive fit constrained to be monotone increasing, with an increased tolerance for convergence in the crossvalidation
fit3 = liso(x,y, TRUE, monotone=TRUE, control=list(cv=list(tol.target=1e-2), liso=NULL))
plot(fit3, dims=1:2)
## Do a sign discovery adaptive fit, with 5 CV folds instead of 10
fit4 = liso(x,y, TRUE, control=list(cv=list(K=5), liso=NULL))
plot(fit4, dims=1:2)
``` |