[R] R programming style

Earl F. Glynn efg at stowers-institute.org
Mon Feb 11 20:29:43 CET 2008


"David Scott" <d.scott at auckland.ac.nz> wrote in message 
news:alpine.LRH.1.00.0802112343200.27944 at stat12.stat.auckland.ac.nz...
>
> Can anyone provide further pointers to good style?

While not written for R specifically, the book "Code Complete:  A Practical 
Handbook of Software Construction" (2nd Edition) discusses a number of good 
concepts for writing good code in any language:
http://www.amazon.com/Code-Complete-Practical-Handbook-Construction/dp/0735619670

In particular, Part IV "Statements" gives a number of useful suggestions by 
type of statement, e.g., straight-line code, conditionals, loops, ...

There are some practices used in R that I think should be improved.  For 
example, many years ago I was taught in a software engineering class that 
the use of  "magic numbers" was a bad practice, yet we find magic numbers 
used in R in many places.

Instead of using "1" or "2" in an "apply", I'll write something like this 
trying for some sort of mnemonic

apply(x, BY.ROW<-1, sum)
or
apply(z, BY.COL<-2, mean)


I find BY.ROW or BY.COL to be more mnemonic than the magic numbers 1 and 2.

The "sides" 1, 2, 3, and 4 in an axis statement should have some sort of 
mnemonic definition, too, perhaps:

axis(BOTTOM<-1, ...)

But I believe I was ostracized in this E-mail list the last time I suggested 
such mnemonics instead of magic numbers.

efg
Earl F. Glynn
Bioinformatics
Stowers Institute for Medical Research



More information about the R-help mailing list