# I-spline basis of each column of a given matrix

### Description

Create a I-spline basis for an array. \ will equally distribute the knots over the value range using quantiles.

### Usage

1 |

### Arguments

`x` |
The predictor variable, which will be tranformed into I-spline basis. |

`spline.knots` |
Number of inner knots to use. |

`knots` |
An array consisting all knots (boundary knots as well as the interior knots) to be used to create the spline basis. |

`spline.degree` |
The polynomial degree of the spline basis. |

### Value

Returns the I-spline with the used spline settings as attribute. The spline settings attribute can transform the same attribute of any other objects using the same knots.

### Author(s)

Hok San Yip, Patrick J.F. Groenen, Georgi Nalbantov

### References

P.J.F. Groenen, G. Nalbantov and J.C. Bioch (2008) *SVM-Maj: a majorization approah to linear support
vector machines with different hinge errors.*
J.O. Ramsay (1988) *Monotone regression splines in action.* Statistical Science, 3(4):425-461

### See Also

`svmmaj`

### Examples

1 2 3 4 5 6 7 | ```
## create I-spline basis for the first 50 observations
x <- iris$Sepal.Length
B1 <- isb(x[1:50],spline.knots=4,spline.degree=3)
## extracting the spline transformation settings
spline.param <- attr(B1,'splineInterval')
## use the same settings to apply to the next 50 observations
B2 <- isb(x[-(1:50)],spline.degree=3,knots=spline.param)
``` |