Setting spline points

Introduction

ASReml has a model term spl(x[,k]) which, when fitted as a random term in conjunction with the covariate x fitted as a fixed term generates a cubic smoothing spline model. Several qualifiers modify the defaults with respect to choosing knot points for the spline.

The basic form of the spline model term is spl(v) where v is the underlying variate. The basic form uses the unique data values as the knot points subject to the following qualifiers.

The extended form is spl(v,n) which uses n knot points. Using this extended form without supplying knot points results in n equally spaced knot points being used.

!KNOTS

!KNOTS n changes the default knot points used when fitting a basic spline to data with more than n different values of the spline variable. When there are more than n (default 50) points, ASReml will default to using n equally spaced knot points covering the range.

!SPLINE

!SPLINE spl(v,n) knotpoints defines a spline model term spl(v,n) with an explicit set of knot points.

The !SPLINE qualifier may only be used on a line by itself after the datafile line and before the model line.

When knot points are explicitly supplied they should be in increasing order and adequately cover the range of the data or ASReml will modify them before they are applied. If you choose to spread them over several lines, place a comma at the end of incomplete lines so that ASReml will to continue reading values from the next line of input.

If the explicit points do not adequately cover the range, a message is printed and the values are rescaled unless !NOCHECK is also specified. Inadequate coverage is when the explicit range does not cover the midpoint of the actual range.

!NOCHECK

!NOCHECK forces ASReml to use any explicitly set spline knot points (see !SPLINE ) even if they do not appear to adequately cover the data values.

!SCALE

When forming a design matrix for the spl() model term, ASReml uses a standardized scale (independent of the actual scale of the variable). The qualifier
     !SCALE 1
forces ASReml to use the scale of the variable. The default standardised scale is appropriate in most circumstances.

Return to start