splint                package:fields                R Documentation

_C_u_b_i_c _s_p_l_i_n_e _i_n_t_e_r_p_o_l_a_t_i_o_n

_D_e_s_c_r_i_p_t_i_o_n:

     A fast, FORTRAN based function for cubic spline interpolation.

_U_s_a_g_e:

     splint(x, y, xgrid, wt=NULL, derivative=0,lam=0, df=NA)

_A_r_g_u_m_e_n_t_s:

       x: The x values that define the curve or a two column matrix of 
           x and y values.  

       y: The y values that are paired with the x's.  

   xgrid: The grid to evaluate the fitted cubic interpolating curve.  

derivative: Indicates whether the function or a a first or second
          derivative  should be evaluated.  

      wt: Weights for different obsrevations in the scale of reciprocal
           variance.

     lam: Value for smoothing parameter. Default value is zero giving 
          interpolation.

      df: Effective degrees of freedom. Default is to use lambda =0 or
          a   df equal to the number of observations.

_D_e_t_a_i_l_s:

     Fits a piecewise interpolating or smoothing cubic  polynomial to
     the x and y values.  This code is designed to be fast but does not
     many options in   'sreg' or other more statistical
     implementations.   To make the solution well posed the the second
     and third derivatives are set to zero at the limits of the  x 
     values. Extrapolation outside the range of the x  values will be a
     linear function. 

     It is assumed that there are no repeated x values; use sreg
     followed by predict if you do have replicated data.

_V_a_l_u_e:

     A vector consisting of the spline evaluated at the grid values in
     'xgrid'.

_R_e_f_e_r_e_n_c_e_s:

     See Additive Models by Hastie and Tibshriani.

_S_e_e _A_l_s_o:

     sreg,  Tps

_E_x_a_m_p_l_e_s:

     x<- seq( 0, 120,,200)

     # an interpolation
     splint(rat.diet$t, rat.diet$trt,x )-> y

     plot( rat.diet$t, rat.diet$trt)
     lines( x,y)
     #( this is weird and not appropriate!)

     # the following two smooths should be the same

     splint( rat.diet$t, rat.diet$con,x, df= 7)-> y1

     # sreg function has more flexibility than splint but will
     # be slower for larger data sets. 

     sreg( rat.diet$t, rat.diet$con, df= 7)-> obj
     predict(obj, x)-> y2 

     # in fact predict.sreg interpolates the predicted values using splint!

     # the two predicted lines (should) coincide
     lines( x,y1, col="red",lwd=2)
     lines(x,y2, col="blue", lty=2,lwd=2)
      

