[R] re-ordering a vector by name

Liaw, Andy andy_liaw at merck.com
Fri May 7 23:15:44 CEST 2004


Dear R-help,

Let's say `x1' and `x2' are very long vectors (length=5e5, say) with same
set of names but in different order.  If I want to sort `x2' in the order of
`x1', I would do 

  x2[names(x1)]

but the amount of time that takes is quite prohibitive!  Does anyone have
any suggestion on a more efficient way to do this?

If the two vectors are exactly the same length (as I said above), sorting
both by names would probably be the fastest.  However, if the two vectors
differ in length (and the names for the shorter one are a subset of names of
the longer one) then that doesn't work...

Best,
Andy




More information about the R-help mailing list