[R] simple question about variables....

Joerg van den Hoff j.van_den_hoff at fz-rossendorf.de
Thu Jul 13 10:19:27 CEST 2006


Stéphane Cruveiller wrote:
> Dear R users,
> 
> I have a simple question on variable manipulation.
> Imagine I have an object "OBJ" that has "toto" as one of its variables.
> I would like to understand why if I do
> 
>  > varname <- "toto"
> 
>  >OBJ$varname                             returns no results
> 
> whereas
> 
>  > OBJ[varname]                            returns the column entitled 
> "toto"
> 
> 
> Thanks for your help.
> 
> Stéphane.
> 

because if the value of `varname' is substituted in the expressions, in 
the first case that yields

OBJ$"toto" and in the second
OBJ["toto"]


the latter is valid, the former is not (you'd need `OBJ$toto' there), 
read ` ?"$" ':

"...Both '[[' and '$' select a single element of the list.  The main
      difference is that '$' does not allow computed indices, whereas
      '[[' does.  'x$name' is equivalent to 'x[["name"]]'..."


not, too, the difference between `[' (sublist) and `[[' (single element 
extraction)

joerg



More information about the R-help mailing list