[R] indexing
javier garcia-pintado
jgarcia at ija.csic.es
Fri Feb 2 11:09:06 CET 2007
Thanks a lot
match() function does the task (of course this a a simple example of my
long datasets)
Just for the record, merge() function does not seem to work properly for
this (even with the sort=FALSE argument) as the order of the results
does not match the corresponding order of classes in the x vector.
Wishes,
Javier
-------------------------------------------------------
Tony Plate wrote:
> > a <- data.frame(value=c(6.5,7.5,8.5,12.0),class=c(1,3,5,2))
> > x <- c(1,1,2,7,6,5,4,3,2,2,2)
> > match(x, a$class)
> [1] 1 1 4 NA NA 3 NA 2 4 4 4
> > a[match(x, a$class), "value"]
> [1] 6.5 6.5 12.0 NA NA 8.5 NA 7.5 12.0 12.0 12.0
> >
>
> -- Tony Plate
>
> javier garcia-pintado wrote:
>> Hello,
>> In a nutshell, 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
>>
>>
>> ------------------------------------------------------------------------
>>
>> ______________________________________________
>> 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.
>
>
--
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
More information about the R-help
mailing list