?col

rowSums(col(mat) * mat)

produces a named vector that you can convert to a data frame if you like,
although it's really not necessary.

Cheers,
Bert


On Wed, Oct 16, 2013 at 12:49 PM, arun <smartpink111@yahoo.com> wrote:

> Hi,
> Try:
>
> ind <- which(mat==1,arr.ind=TRUE)[,2]
> dat1<- data.frame(Code=names(ind),ind=ind,stringsAsFactors=FALSE)
>  row.names(dat1) <- 1:nrow(dat1)
> A.K.
>
>
>
>
>
> On Wednesday, October 16, 2013 3:29 PM, Karl Fetter <karl.fetter@gmail.com>
> wrote:
> Hello,
>
> I have a matrix of samples (rows) and haplotypes (columns), where 0
> indicates that a sample does not posses that columns haplotype and 1
> indicates it does. So sample1 has 0's for every column, except the column
> that represents haplotype X, and it has a 1.
>
>
> I want a length(sample) x 2 dataframe that tells me which samples have what
> haplotype.
>
> I need some way of identifying for every row, where is the 1? And then
> print that information in a new column so I can see what row and which
> haplotype.
>
> Here is an example of what I mean:
>
> mat <- matrix(data = c(1,0,0,0,1,0,0,0,1), nrow = 3, byrow = T)
>
> rownames(mat) <- c("AL", "MS", "FL")
>
> > mat
>
>    [,1] [,2] [,3]
>
> AL    1    0    0
>
> MS    0    1    0
>
> FL    0    0    1
>
>
> How can I make a data frame like this:
>
> AL 1
>
> MS 2
>
> FL 3
>
>
> Thanks for your ideas and time,
>
> Karl
>
>     [[alternative HTML version deleted]]
>
> ______________________________________________
> 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.
>
>
> ______________________________________________
> 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.
>



-- 

Bert Gunter
Genentech Nonclinical Biostatistics

(650) 467-7374

	[[alternative HTML version deleted]]

