poly                  package:stats                  R Documentation

Compute Orthogonal Polynomials

Description:

     Returns or evaluates orthogonal polynomials of degree 1 to
     'degree' over the specified set of points 'x'. These are all
     orthogonal to the constant polynomial of degree 0.

Usage:

     poly(x, ..., degree = 1, coefs = NULL)
     polym(..., degree = 1)

     ## S3 method for class 'poly':
     predict(object, newdata, ...)

Arguments:

x, newdata: a numeric vector at which to evaluate the polynomial. 'x'
          can also be a matrix.

  degree: the degree of the polynomial

   coefs: for prediction, coefficients from a previous fit.

  object: an object inheriting from class '"poly"', normally the result
          of a call to 'poly' with a single vector argument.

     ...: 'poly, polym': further vectors.
           'predict.poly': arguments to be passed to or from other
          methods. 

Details:

     Although formally 'degree' should be named (as it follows '...'),
     an unnamed second argument of length 1 will be interpreted as the
     degree.

     The orthogonal polynomial is summarized by the coefficients, which
     can be used to evaluate it via the three-term recursion given in
     Kennedy & Gentle (1980, pp. 343-4), and used in the "predict" part
     of the code.

Value:

     For 'poly' with a single vector argument:
      A matrix with rows corresponding to points in 'x' and columns
     corresponding to the degree, with attributes '"degree"' specifying
     the degrees of the columns and '"coefs"' which contains the
     centering and normalization constants used in constructing the
     orthogonal polynomials.  The matrix is given class 'c("poly",
     "matrix")' as from R 1.5.0.

     Other cases of 'poly' and 'polym', and 'predict.poly': a matrix.

Note:

     This routine is intended for statistical purposes such as
     'contr.poly': it does not attempt to orthogonalize to machine
     accuracy.

References:

     Chambers, J. M. and Hastie, T. J. (1992) _Statistical Models in
     S_. Wadsworth & Brooks/Cole.

     Kennedy, W. J. Jr and Gentle, J. E. (1980) _Statistical Computing_
     Marcel Dekker.

See Also:

     'contr.poly'

Examples:

     (z <- poly(1:10, 3))
     predict(z, seq(2, 4, 0.5))
     poly(seq(4, 6, 0.5), 3, coefs = attr(z, "coefs"))

     polym(1:4, c(1, 4:6), degree=3) # or just poly()
     poly(cbind(1:4, c(1, 4:6)), degree=3)

