dr                    package:dr                    R Documentation

_D_i_m_e_n_s_i_o_n _r_e_d_u_c_t_i_o_n _r_e_g_r_e_s_s_i_o_n

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

     The function dr implements dimension reduction methods, including
     SIR, SAVE and pHd.

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

     dr(formula, data=list(), subset, weights, na.action=na.omit, method="sir", 
          contrasts=NULL,offset=NULL, ...)
     dr.weights(formula, data=list(), subset, weights, na.action=na.omit, method="sir", 
          contrasts=NULL,offset=NULL, ...)


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

 formula: a symbolic description of the model to be fit. The details of
          the model are the same as for lm. 

    data: an optional data frame containing the variables in the model.
          By default the variables are taken from the environment from
          which `dr' is called.

  subset: an optional vector specifying a subset of observations to be
          used in the fitting process.

 weights: an optional vector of weights to be used where appropriate.

na.action: a function which indicates what should happen when the data
          contain `NA's.  The default is `na.omit,' which will force
          calculations on a complete subset of cases.

  method: This character string specifies the method of fitting. 
          ``sir" specifies sliced inverse regression and ``save"
          specifies sliced average variance estimation.  ``phdy" uses
          principal hessian directions using the response as suggested
          by Li, and ``phdres"  uses the LS residuals as suggested by
          Cook. Other methods may be added

contrasts: an optional list. See the `contrasts.arg' of
          `model.matrix.default'.

  offset: Set an offset or NULL

     ...: additional items that may be required or permitted by some 
          methods. `nslices' is the number of slices used by sir and
          save. `numdir' is the maximum number of directions to
          compute, with default equal to 4.

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

     The general regression problem studies F(y|x), the conditional
     distribution of a response y given a set of predictors x.   This
     function provides methods for estimating the dimension and central
     subspace of a general regression problem.  That is, we want to
     find a  p by d matrix B such that 

                           F(y|x)=F(y|B'x)

     Both the dimension d and the subspace R(B) are unknown.  These
     methods make few assumptions.  All the methods available in this
     function estimate the unknowns by study of the inverse problem,
     F(x|y).  In each, a kernel matrix M is estimated such that the
     column space of M should be close to the central subspace.
     Eigenanalysis of M is then used to estimate the central subspace.
     Objects created using this function have appropriate print,
     summary and plot methods.

     Weights can be used, essentially to specify the relative 
     frequency of each case in the data.  Empirical weights that make 
     the contours of the weighted sample closer to elliptical can be 
     computed using `dr.weights'.   This will usually result in zero
     weight for some  cases.  The function will set zero estimated
     weights to missing.

     Several functions are provided that require a dr object as input. 
      `dr.permutation.tests' uses a permutation test to obtain
     significance levels for tests of dimension.  `dr.coplot' allows
     visualizing the results using a coplot of either two selected
     directions conditioning on a third and using color to mark the
     response, or the resonse versus one direction, conditioning on a
     second direction.  `plot.dr' provides the default plot method for
     dr objects, based on a scatterplot matrix.

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

     dr returns an object that inherits from dr (the name of the type
     is the value of the `method' argument), with attributes: 

       M: A matrix that depends on the method of computing.  The column
          space of M should be close to the central subspace.

 evalues: The eigenvalues of M (or squared singular values if M is not
          symmetric).

evectors: The eigenvectors of M (or of M'M if M is not square and
          symmetric) ordered according to the eigenvalues.

  numdir: The maximum number of directions to be found.  The output
          value of numdir may be smaller than the input value.

ols.coef: Estimated regression coefficients, excluding the intercept,
          for the (weighted) LS fit.

 ols.fit: LS fitted values.

slice.info: output from sir.slice, used by sir and save.

  method: the dimension reduction method used.

     Other returned values repeat quantities from input.  

     `dr.weights' returns a vector of weights NA substituted for
     estimated zero weights.

_A_u_t_h_o_r(_s):

     Sanford Weisberg,  sandy@stat.umn.edu 

     For weights, see R. D. Cook and C. Nachtsheim (1994), Reweighting
     to achieve elliptically contoured predictors in regression. 
     Journal of the American Statistical Association, 89, 592-599.

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

     The details of these methods are given by R. D. Cook  (1998). 
     Regression Graphics.  New York:  Wiley.  Equivalent  methods are
     also available in Arc, R. D. Cook and S. Weisberg  (1999). 
     Applied Regression Including Computing and Graphics, New  York: 
     Wiley, www.stat.umn.edu/arc.

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

     `dr.permutation.test',`dr.x',`dr.y',
     `dr.direction',`dr.coplot',`dr.weights'

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

     library(dr)
     data(ais)
     attach(ais)  # the Australian athletes data
     #fit dimension reduction using sir
     m1 <- dr(LBM~Wt+Ht+RCC+WCC, method="sir", nslices = 8)
     summary(m1)

     # repeat, using save:

     m2 <- update(m1,method="save")
     summary(m2)

     # repeat, using phd:

     m3 <- update(m2, method="phdres")
     summary(m3)

