[R] programming questions
Duncan Murdoch
murdoch.duncan at gmail.com
Wed Nov 3 19:15:17 CET 2010
On 03/11/2010 2:05 PM, ivo welch wrote:
> 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.
Where did you find the is.defined() function? It's not part of R. The
R function to do that is exists().
Duncan Murdoch
More information about the R-help
mailing list