try this: > mapping <- c('0'='a', '1'='c', '2'='g', '3'='t') > x <- matrix(sample(0:3, 30, TRUE), ncol=3) > x [,1] [,2] [,3] [1,] 3 1 1 [2,] 1 3 2 [3,] 1 1 1 [4,] 1 1 1 [5,] 2 1 3 [6,] 1 3 0 [7,] 1 3 2 [8,] 3 1 0 [9,] 0 3 0 [10,] 3 3 0 > apply(x, 1, function(z){ + paste(mapping[as.character(z)], collapse='') + }) [1] "tcc" "ctg" "ccc" "ccc" "gct" "cta" "ctg" "tca" "ata" "tta" > >
On Sun, Jan 11, 2009 at 10:38 AM, Gundala Viswanath <gunda...@gmail.com> wrote: > Hi all, > > Given a matrix: > >> mat > > [,1] [,2] [,3] > [1,] 0 0 0 > [2,] 3 3 3 > [3,] 1 1 1 > [4,] 2 1 1 > > > How can I convert it to a list of strings: > >> desired_output > [1] "aaa" "ttt" "ccc" "gcc" > > > In principle: > > 1. Number of Column in matrix = length of string (= 3) > 2. Number of Row in matrix = length of vector ( = 4). > 3. Character "a" encode as "0", > "c" -> "1", > "g" -> "2", > "t" -> "3" > > > Length of strings are assumed to be uniform within the vector, > and it can be greater than 3 (up to 40 characters). > > > - Gundala Viswanath > Jakarta - Indonesia > > ______________________________________________ > 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. > -- Jim Holtman Cincinnati, OH +1 513 646 9390 What is the problem that you are trying to solve? ______________________________________________ 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.