[R] Make one vector from matrix comparison

Gabor Grothendieck ggrothendieck at gmail.com
Mon Nov 10 16:28:06 CET 2008


Try:

c(inner(testmat1, testmat2, setequal))

where inner is defined here:
http://finzi.psych.upenn.edu/R/Rhelp02a/archive/70762.html

On Mon, Nov 10, 2008 at 10:11 AM, Chris82 <rubenbauar at gmx.de> wrote:
>
> Hello R-users,
>
> I have a little problem.
>
> I compare each row of a matrix with each row of another matrix.
>
> testmat1 <- matrix(c(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16), nrow=4)
> testmat2 <- matrix(c(1,2,3,5,5,6,7,8,9,10,11,12,13,14,15,16), nrow=4)
>
> Both matrix differs in the last row.
>
> Now I create a loop:
>
> for (i in (1:4)){
> for (j in (1:4)){
> b <- (c(setequal(testmat1[j,],testmat2[i,])))
> print(b)
> }
> }
>
> R outputs me the following:
>
> [1] TRUE
> [1] FALSE
> [1] FALSE
> [1] FALSE
> [1] FALSE
> [1] TRUE
> [1] FALSE
> [1] FALSE
> [1] FALSE
> [1] FALSE
> [1] TRUE
> [1] FALSE
> [1] FALSE
> [1] FALSE
> [1] FALSE
> [1] FALSE
>
> but I need one vector like this:
>
> [1] TRUE FALSE FALSE FALSE FALSE TRUE FALSE FALSE FALSE FALSE TRUE FALSE
> FALSE FALSE FALSE FALSE
>
> Any ideas?
>
> thanks
> --
> View this message in context: http://www.nabble.com/Make-one-vector-from-matrix-comparison-tp20421761p20421761.html
> Sent from the R help mailing list archive at Nabble.com.
>
> ______________________________________________
> R-help at 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.
>



More information about the R-help mailing list