# Re: [R] conditional matching of rows of tables

From: Stanley Ng <stanleyngkl_at_gmail.com>
Date: Fri, 21 Mar 2008 08:00:08 +0800

I have matrix A of 4 cols:
1 a 0 4
1 b 5 8
2 a 0 3
2 b 4 7

And matrix B of 3 cols:
1 2 3
2 4 5
2 0 3
1 7 8

I would like to assign (a or b) to the rows of matrix B. The rules are that in each row of matrix B, the 1st value must match the 1st col. of matrix A, 2nd and 3rd values must lie between 3rd and 4rd cols (inclusive) of matrix A.

For example, the 1st row of matrix B is 1 2 3, the 1st value "1" corresponds to 1st and 2nd row of matrix A. Next, its 2nd and 3rd values "2" and "3" lie between "0" and "4" of 1st row of matrix A. Thus 1st row of matrix B is assigned "a". Similarly, the assignments for remaining rows of matrix B are

``` 2 4 5 -> "b"
2 0 3 -> "a"
1 7 8 -> "b"

```

-----Original Message-----
From: jim holtman [mailto:jholtman_at_gmail.com] Sent: Friday, March 21, 2008 00:33
To: Ng Stanley
Cc: r-help
Subject: Re: [R] conditional matching of rows of tables

Not exactly clear on the transformation that you want to do. In your example, '1 2 3 -> a', where does the '2 3' come from since I don't see a value of 2 in the 3rd & 4th columns. So a better explanation of what you are trying to do would be help and show where the values came from in each case.

On 3/20/08, Ng Stanley <stanleyngkl_at_gmail.com> wrote:
> Hi,
>
> Given matrix A of 4 cols.
>
> 1 a 0 4
> 1 b 5 8
> 2 a 0 3
> 2 b 4 7
>
> I have another matrix B of 3 cols. How to assign (a or b) to the rows
> such that in each row its 1st value must match the 1st col. of A, 2nd
> and 3rd values must lie between 3rd and 4rd cols (inclusive) of A
>
> 1 2 3 -> a
> 2 4 5 -> b
> 2 0 3 -> a
> 1 7 8 -> b
>
> [[alternative HTML version deleted]]
>
> ______________________________________________
> R-help_at_r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>

```--
Jim Holtman
Cincinnati, OH
+1 513 646 9390

What is the problem you are trying to solve?

______________________________________________
R-help_at_r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help