[R] A co-occurrence matrix
Liaw, Andy
andy_liaw at merck.com
Tue Nov 11 13:41:18 CET 2003
Does the following help?
> group <- c(1, 2, 1, 1, 3)
> outer(group, group, "==")
[,1] [,2] [,3] [,4] [,5]
[1,] TRUE FALSE TRUE TRUE FALSE
[2,] FALSE TRUE FALSE FALSE FALSE
[3,] TRUE FALSE TRUE TRUE FALSE
[4,] TRUE FALSE TRUE TRUE FALSE
[5,] FALSE FALSE FALSE FALSE TRUE
> outer(group, group, "==") + 0 # Turn it into a numeric matrix.
[,1] [,2] [,3] [,4] [,5]
[1,] 1 0 1 1 0
[2,] 0 1 0 0 0
[3,] 1 0 1 1 0
[4,] 1 0 1 1 0
[5,] 0 0 0 0 1
Andy
> -----Original Message-----
> From: Alexey Shipunov [mailto:a.shipunov at rbgkew.org.uk]
> Sent: Tuesday, November 11, 2003 5:50 AM
> To: R-help at stat.math.ethz.ch
> Subject: [R] A co-occurrence matrix
>
>
> Dear R experts,
>
> I have a matrix (from some sort of
> classification) like this:
>
> object group
> [1,] 1 1
> [2,] 2 2
> [3,] 3 1
> [4,] 4 1
> [5,] 5 3
>
> And I need something like this:
>
> [,1] [,2] [,3] [,4] [,5]
> [1,] 1 0 1 1 0
> [2,] 0 1 0 0 0
> [3,] 1 0 1 1 0
> [4,] 1 0 1 1 0
> [5,] 0 0 0 0 1
>
> where all zeros mean that these objects are not
> in same group, and vice versa.
>
> Is there a relatively simple way to construct co-
> uccurence matrices of type shown above?
>
> Any help would be appreciated,
>
>
> =================================
> Dr. Alexey B. Shipunov
> Section of Molecular Systematics
> Jodrell Laboratory
> Royal Botanic Gardens, Kew,
> Richmond, Surrey, TW9 3DS, U.K.
> e-mail: a.shipunov at rbgkew.org.uk
>
> ______________________________________________
> R-help at stat.math.ethz.ch mailing list
> https://www.stat.math.ethz.ch/mailman/listinfo> /r-help
>
More information about the R-help
mailing list