[R] indexing without looping
David Barron
mothsailor at googlemail.com
Thu Feb 1 17:18:53 CET 2007
One way would be to use merge, like this:
merge(assignation,data.frame(class=x),all.y=TRUE)
There might well be better ways...
On 01/02/07, javier garcia-pintado <jgarcia at ija.csic.es> wrote:
> Hello,
> I've got a data.frame like this:
>
> > > assignation <- data.frame(value=c(6.5,7.5,8.5,12.0),class=c(1,3,5,2))
> > > assignation
> >
> value class
> 1 6.5 1
> 2 7.5 3
> 3 8.5 5
> 4 12.0 2
>
> > >
> >
>
> and a long vector of classes like this:
>
>
> > > x <- c(1,1,2,7,6,5,4,3,2,2,2...)
> >
>
> And would like to obtain a vector of length = length(x), with the
> corresponding values extracted from assignation table. Like this:
>
> > > x.value
> >
> [1] 6.5 6.5 12.0 NA NA 8.5 NA 7.5 12.0 12.0 12.0
>
> Could you help me with an elegant way to do this ?
> (I just can do it with looping for each class in the assignation table,
> what a think is not perfect in R's sense)
>
> Wishes,
> Javier
>
> --
> Javier García-Pintado
> Institute of Earth Sciences Jaume Almera (CSIC)
> Lluis Sole Sabaris s/n, 08028 Barcelona
> Phone: +34 934095410
> Fax: +34 934110012
> e-mail:jgarcia at ija.csic.es
>
>
> ______________________________________________
> R-help at stat.math.ethz.ch 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.
>
>
--
=================================
David Barron
Said Business School
University of Oxford
Park End Street
Oxford OX1 1HP
More information about the R-help
mailing list