[R] Extract values based on indexes without looping?
Charles C. Berry
cberry at tajo.ucsd.edu
Wed Dec 24 04:14:16 CET 2008
On Tue, 23 Dec 2008, Sean Zhang wrote:
> Dear R-Helpers:
>
> I am a entry level user of R.
>
You need to read
An Introduction to R
particularly this section:
2.7 Index vectors; selecting and modifying subsets of a data set
...
2. A vector of positive integral quantities
Also, see
?Subscript
and run
example( Subscript )
HTH,
Chuck
> Have the following question. Many thanks in advance.
>
>
> # value.vec stores values
> value.vec <- c('a','b','c')
> # which.vec stores the locations/indexs of values in value.vec.
> which.vec <- c(3, 2, 2, 1)
> # How can I obtain the following vector based on the value.vec and which.vec
> mentioned above
> # vector.I.want <- c('c', 'b', 'b', 'a')
> # 3 2 2 1
>
>
> # I try to avoid using the following loop to achieve the goal because the
> which.vec in reality will be very long
>
> vector.I.want <- rep(NA,length(which.vec))
> for (i in 1:length(which.vec))
> { vector.I.want[i] <- value.vec[which.vec[i]] }
>
> # is there a faster way than looping?
>
> Thanks in advance.
>
> -Sean
>
> [[alternative HTML version deleted]]
>
> ______________________________________________
> 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.
>
Charles C. Berry (858) 534-2098
Dept of Family/Preventive Medicine
E mailto:cberry at tajo.ucsd.edu UC San Diego
http://famprevmed.ucsd.edu/faculty/cberry/ La Jolla, San Diego 92093-0901
More information about the R-help
mailing list