[R] perfectionism

Patrick Burns pburns at pburns.seanet.com
Fri Nov 25 20:41:01 CET 2011


Did you try:

z[f]

On 25/11/2011 19:23, Jack Tanner wrote:
> I have a named vector:
>
>> z<- c(1, 2, 3, 2)
>> names(z)<- c("a","b","c","b")
>> f<- c("b","c")
>
> I want to know the index in z of the first occurrence of each of the values in f.
>
> One implementation is
>
>> sapply(f, function(x) which(names(z)==x)[1])
> b c
> 2 3
>
> Is which() smart enough to stop when it finds in z the first occurrence of every
> value from f, or does it search through all the values in z only to report the
> first one?
>
> Are some more elegant ways of writing this code?
>
> Just curious.
>
> ______________________________________________
> R-help at 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.
>

-- 
Patrick Burns
pburns at pburns.seanet.com
twitter: @portfolioprobe
http://www.portfolioprobe.com/blog
http://www.burns-stat.com
(home of 'Some hints for the R beginner'
and 'The R Inferno')



More information about the R-help mailing list