Re: [Rd] Differences between "$" and "[["

From: Duncan Murdoch <murdoch_at_stats.uwo.ca>
Date: Tue 30 Nov 2004 - 02:09:40 EST

On Mon, 29 Nov 2004 15:47:58 +0100, Eric Lecoutre <lecoutre@stat.ucl.ac.be> wrote :

>
>Hi,
>
>If I define the following list:
>
> > (l<-list("text-align"="right"))
>$"text-align"
>[1] "right"
>
>I know that I can't use l$text-align, as the parser will find a '-' operation.
>If I want (need) to use special names, as "text-align", I have to enclose
>it between "". So I can use:
>
>l$"text-align" or l[["text-align"]]
>
>If now I have the text "text-align" defined in a variable:
>p<-"text-align"
>
>I can use:
> > l[[p]]
>[1] "right"
>
>But I can't use l$p
>
>where as it is said in the help page that 'x$name' is equivalent to
>'x[["name"]]'.
>
>Anyway I will use "[[" but I dont clearly understand this behavior.

I think you do understand it. From the line above, l$p would be equivalent to l[["p"]], which is clearly different from l[[p]].

But since l$"text-align" is harder to construct than l[["text-align"]] when "text-align" is stored in p, why bother?

Duncan Murdoch



R-devel@stat.math.ethz.ch mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel Received on Tue Nov 30 02:31:30 2004

This archive was generated by hypermail 2.1.8 : Tue 30 Nov 2004 - 03:13:11 EST