[R] automatic completion of object names

David Winsemius dwinsemius at comcast.net
Fri Jul 6 16:32:05 CEST 2012


On Jul 6, 2012, at 9:36 AM, knallgrau at gmx.com wrote:

> Hello there,
>
> I just upgraded to R 2.15 (from R 2.12) on a Windows XP machine and  
> noticed some puzzling behaviour (that in my opinion did not exist in  
> R 2.12).
>
> It is possible now to call objects without spelling out the full  
> object name. R now seems to use that (unique) object which shares  
> the same beginning of the called object, even though the originally  
> called object might not even exist.
>
> This is quite awkwardly described, but perhaps you know what I'm  
> talking about?
>
> Let's say I'm using the Mroz data supplied with the car package:
>
> require(car)
> data(Mroz)
>
> there is no variable called "w" in that dataframe, but calling
>
> summary(Mroz$w) #### Mroz$w does not exist
>
> does not return any error but instead gives the same result as
>
> summary(Mroz$wc) ##### exists in Mroz
>
>
> I find this behaviour *very* undesirable. Is there any way to switch  
> it off?

It has always been the case. See the ?Extract page. The controlling  
sentence is here>

" x$name is equivalent to x[["name", exact = FALSE]]. Also, the  
partial matching behavior of[[ can be controlled using the exact  
argument."

(I'm using R2.14.2 ... further evidence this is not new in 2.15.x)

 > summary(Mroz$w)
  no yes
541 212

-- 
David Winsemius, MD
West Hartford, CT



More information about the R-help mailing list