# [R] faraway tutorial: cryptic command to newbie

Julian Faraway faraway at umich.edu
Mon Feb 24 18:41:23 CET 2003

```That's an unfair criticism. That discussion was never intended as
a recommendation for how to compute a regression. Of course, SVD or
QR decompositions are the preferred method but many newbies don't want to
digest all that right from the start. These are just obscure details to
the beginner.

One of the strengths of R in teaching is that students can directly
implement the formulae from the theory. This reinforces the connection
between theory and practice. Implementing the normal equations directly
is a quick early illustration of this connection. Explaining the precise
details of how to fit a regression model is something that can be
deferred.

Julian Faraway

>> I am just about working through Faraways excellent tutorial "practical
>> regression and ANOVA using R"
>
>I assume this is a reference to the PDF version available via CRAN. I am
>afraid that is *not* a good discussion of how to do regression,
especially
>not using R.  That page is seriously misleading: good ways to compute
>regressions are QR decompositions with pivoting (which R uses) or an SVD.
>Solving the normal equations is well known to square the condition
number,
>and is close to the worse possible way.  (If you must use normal
>equations, do at least centre the columns, and preferably do some
>scaling.)
>
>> on page 24 he makes the x matrix:
>> x <- cbind(1,gala[,-c(1,2)])
>>
>> how can I understand this gala[,-c(1,2)])... I couldn't find an
>> explanation of such "c-like" abbreviations anywhere.
>
>Well, it is in all good books (as they say) including `An Introduction to
>R'. (It's even on page 210 of that book!)
>
>-c(1,2) is (try it)
>
>> -c(1,2)
>[1] -1 -2
>
>so this drops columns 1 and 2.  It then adds in front a column made up of
>ones, which is usually a sign of someone not really understanding how
>R's linear models work.
>

```