[R] How to make this binary hit matrix
Marc Schwartz
marc_schwartz at comcast.net
Sun Jun 15 19:58:31 CEST 2008
on 06/15/2008 12:46 PM ssls sddd wrote:
> Hi all,
>
> Basically I want to make a binary hit matrix.
>
> For instance, if I have a file called 'pair.txt':
>
> set_a gene_1
> set_a gene_2
> set_a gene_3
> set_b gene_3
> set_b gene_4
> set_b gene_5
> set_c gene_1
> set_c gene_3
>
> And I want to convert it to a binary matrix as:
>
> Rows set_a set_b set_c
> gene_1 1 0 1
> gene_2 1 0 0
> gene_3 1 1 1
> gene_4 0 1 0
> gene_5 0 1 0
>
> Can anyone suggest how to do this?
>
> Thank you!
>
> Alex
Presuming that your data is contained in a data frame called 'DF':
> DF
V1 V2
1 set_a gene_1
2 set_a gene_2
3 set_a gene_3
4 set_b gene_3
5 set_b gene_4
6 set_b gene_5
7 set_c gene_1
8 set_c gene_3
You can use:
> t(table(DF))
V1
V2 set_a set_b set_c
gene_1 1 0 1
gene_2 1 0 0
gene_3 1 1 1
gene_4 0 1 0
gene_5 0 1 0
See ?table and ?t
HTH,
Marc Schwartz
More information about the R-help
mailing list