On 23-Jul-08 12:54:49, Shubha Vishwanath Karanth wrote:
> Hi R,
> If 
> x=c(1,3,5)
> y=c(2,4,6)
> 
> I need a vector which is c(1,2,3,4,5,6) from x and y.
> How do I do it? I mean the best way....
> Thanks, Shubha

Your query is ambiguous, in that it is not clear whether you want
a) The elements of the combination of x and y to be in increasing
   order, regardless of how they are distributed between x and y

   In which case a simple solution is sort(c(x,y))

b) The elements to be taken alternately from x and y, regardless
   of their values

   In which case a simple solution is as.vector(rbind(x,y))

Example:

  x <- c(1.1,1.2,1.3)
  y <- c(2.1,2.2,2.3)

  ## (a):
  sort(c(x,y))
  # [1] 1.1 1.2 1.3 2.1 2.2 2.3

  ## (b)
  as.vector(rbind(x,y))
  # [1] 1.1 2.1 1.2 2.2 1.3 2.3

The key to solution (b) is that R reads a matrix down the columns,
and rbind(x,y) puts x as a row above y as a row, so reading down
the columns alternates between x and y.

Hoping this helps,
Ted.

--------------------------------------------------------------------
E-Mail: (Ted Harding) <[EMAIL PROTECTED]>
Fax-to-email: +44 (0)870 094 0861
Date: 23-Jul-08                                       Time: 14:30:31
------------------------------ XFMail ------------------------------

______________________________________________
R-help@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.

Reply via email to