

   FFiinndd tthhee LLeeaasstt SSqquuaarreess FFiitt

        lsfit(x, y, wt, intercept=TRUE, tolerance=1e-07, yname=NULL)

   AArrgguummeennttss::

          x: a matrix whose rows correspond to cases and whose
             columns correspond to variables.

          y: the responses, possibly matrix valued if you want
             to fit multiple left hand sides.

         wt: an optional vector of weights for performing
             weighted least squares.

   intercept: whether or not an intercept term should be used.

   tolerance: the tolerance to be used in the matrix decomposi-
             tion.

      yname: an unused parameter for compatibility.

   DDeessccrriippttiioonn::

        The least squares estimate of b in the model

                              y = X b + e

        is found.  If weights are specified then a weighted
        least squares is performed with the weight given to the
        jth case specified by the jth entry in `wt'.

        If any observation has a missing value in any field,
        that observation is removed before the analysis is car-
        ried out.  This can be quite inefficient if there is a
        lot of missing data.

        The implementation is via a modification of the LINPACK
        subroutines which allow for multiple left-hand sides.

   VVaalluuee::

        A list with the following named components:

       coef: the least squares estimates of the coefficients in
             the model (stated below).

   residuals: residuals from the fit.

   intercept: indicates whether an intercept was fitted.

         qr: the QR decomposition of the design matrix.

   SSeeee AAllssoo::

        `lm' which usually is preferable; `ls.print',
        `ls.diag', `rreg'.

   EExxaammpplleess::

        ##-- Using the same data as the lm(.) example:
        lsD9 <- lsfit(x = codes(gl(2,10)), y = weight)
        ls.print(lsD9)

