Create a Ispline basis for an array. \ will equally distribute the knots over the value range using quantiles.
1 
x 
The predictor variable, which will be tranformed into Ispline 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. 
Returns the Ispline with the used spline settings as attribute. The spline settings attribute can transform the same attribute of any other objects using the same knots.
Hok San Yip, Patrick J.F. Groenen, Georgi Nalbantov
P.J.F. Groenen, G. Nalbantov and J.C. Bioch (2008) SVMMaj: 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):425461
svmmaj
1 2 3 4 5 6 7  ## create Ispline 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)

Questions? Problems? Suggestions? Tweet to @rdrrHQ or email at ian@mutexlabs.com.
All documentation is copyright its authors; we didn't write any of that.