Skip to contents

mspline_init is first used to create the M-spline model structure, including knot positions. Parameters including basis coefficients and scale are either supplied or set to a default that defines a constant hazard model.


  df = 10,
  degree = 3,
  bsmooth = TRUE,
  knots = NULL,
  bknot = 10,
  obstimes = NULL,
  coefs = NULL,
  hscale = 1



Desired number of basis terms, or "degrees of freedom" in the spline. If knots is not supplied, the number of knots is then chosen to satisfy this.


Spline polynomial degree. Can only be changed from the default of 3 if bsmooth is FALSE.


If TRUE then the function is constrained to also have zero derivative and second derivative at the boundary.


Vector of knot locations. If not supplied, df has to be specified. One of two rules is then used to choose the knot locations. If bknots is specified, a set of equally spaced knots between zero and bknots is used. Otherwise if obstimes is supplied, the knots are chosen as equally spaced quantiles of obstimes.

The number of knots (excluding zero) is df - degree + 1 if bsmooth is TRUE, or df - degree - 1 otherwise.


Location of the final spline knot.


Vector of observation times whose quantiles will be used to choose knot locations


Basis coefficients


Hazard scale parameter


A list defining the M-spline, with any omitted list components set to defaults. See mspline_init for details. The parameters are included as the coefs and hscale components.


This function is not for fitting models to data, but for setting up a theoretical M-spline model for illustration.