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
______________________________________________
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.