[R] programming questions

ivo welch ivowel at gmail.com
Wed Nov 3 19:05:45 CET 2010

quick programming questions.  I want to "turn on" more errors.  there
are two traps I occasionally fall into.

* I wonder why R thinks that a variable is always defined in a data frame.

     > is.defined(d)
     [1] FALSE
     > d= data.frame( x=1:5, y=1:5 )
     > is.defined(d$z)
     [1] TRUE
     > is.defined(nonexisting$garbage)
     [1] TRUE

this is a bit unfortunate for me, because subsequent errors become
less clear.   right now, I need to do '(is.defined(d) and
!is.null(d$z))' to check that my function inputs are valid.  It would
be nicer if one could just write "if (is.defined(d$z)".

* is there a way to turn off automatic recycling?  I would rather get
an error than unexpected recycling.  I can force recycling with rep()
when I need to.



Ivo Welch (ivo.welch at brown.edu, ivo.welch at gmail.com)

More information about the R-help mailing list