[R] What does m$... mean?
Prof Brian Ripley
ripley at stats.ox.ac.uk
Wed Aug 13 07:24:20 CEST 2003
On Wed, 13 Aug 2003, Richard A. O'Keefe wrote:
> While reading through some of the R source code, I have come
> across forms such as
> m$... <- e
> and I wondered what they meant.
> ?"$" mentions x$name, but not $...
... is a name, a special one in the context of function calls.
> All it says is
> The operators `$' and `$<-' do not evaluate their second argument.
> It is translated to a string and that string is used to locate
> the correct component of the first argument.
> Does this mean that m$... is the same as m$"..."
> and m$... <- e is the same as m$"..." <- e?
> That's what it seems to do when I try it on some small data frames,
> but is that ALL there is to it, or is there some special magic going
> on? Is there any connection with the use of ... in formal and actual
> parameter lists, or is it just accidental? Why would anyone _want_
> to use $... ?
To add or to change (but almost always to remove) the component of a list
named ... . And they occur frequently in matched calls.
This construction (like many others) is explained in `S Programming': it
seems you may find it enlightening.
Brian D. Ripley, ripley at stats.ox.ac.uk
Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/
University of Oxford, Tel: +44 1865 272861 (self)
1 South Parks Road, +44 1865 272866 (PA)
Oxford OX1 3TG, UK Fax: +44 1865 272595
More information about the R-help