For data frames you can also use with()

in your example:

with(d, exists("z"))
--------------------------------------
Jonathan P. Daily
Technician - USGS Leetown Science Center
11649 Leetown Road
Kearneysville WV, 25430
(304) 724-4480
"Is the room still a room when its empty? Does the room,
 the thing itself have purpose? Or do we, what's the word... imbue it."
     - Jubal Early, Firefly



From:
ivo welch <ivo.welch@gmail.com>
To:
Erik Iverson <eriki@ccbr.umn.edu>
Cc:
r-help <r-help@stat.math.ethz.ch>
Date:
11/03/2010 02:20 PM
Subject:
Re: [R] programming questions
Sent by:
r-help-bounces@r-project.org



yikes.  this is all my fault.  it was the first thing that I ever
defined when I started using R.

   is.defined <- function(name) exists(as.character(substitute(name)))

I presume there is something much better...

/iaw


On Wed, Nov 3, 2010 at 2:12 PM, Erik Iverson <eriki@ccbr.umn.edu> wrote:
>
>
> 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
>
> Which package/version of R is the 'is.defined' function in?
>
> I don't seem to have it here on 2.11.1, which I know is not
> the latest version of R.
>
> What does 'defined' mean?
>
>>
>> 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)".
>
> "z" %in% names(d) ?
>
>>
>> * 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.
>>
>> regards,
>>
>> /iaw
>>
>> ----
>> Ivo Welch (ivo.welch@brown.edu, ivo.welch@gmail.com)
>>
>> ______________________________________________
>> R-help@r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> PLEASE do read the posting guide
>> http://www.R-project.org/posting-guide.html
>> and provide commented, minimal, self-contained, reproducible code.
>

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide 
http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.



	[[alternative HTML version deleted]]

