Hi, On Mar 29, 2013, at 1:29 PM, John Sorkin wrote:
> I am trying to write a function that makes a matrix out of two lists. As you > will see run running the function below, the result is NOT a matrix but > rather a list. Can anyone tell me what I am doing wrong? > Thanks, > John > > test <- function(one,two) { > cat("List One=",one,"\n") > cat("List Two=",two,"\n") > cat("Should be a matrix, but is not",matrix(cbind(one,two)),"\n") > } > x <- c(1,2,3) > y <- c(11,22,33) > test(x,y) > x <- c(1,2,3) y <- c(11,22,33) z <- cbind(x,y) is.matrix(z) [1] TRUE As you can see above, I don't get the same result. I not sure if you want to see the matrix printed in matrix form when you have it in test(). If that were the case then you'll want to avoid cat() and use print() instead. test <- function(one,two) { cat("List One=",one,"\n") cat("List Two=",two,"\n") z <- cbind(one, two) print(z) } test(x,y) List One= 1 2 3 List Two= 11 22 33 one two [1,] 1 11 [2,] 2 22 [3,] 3 33 Cheers, Ben Ben Tupper Bigelow Laboratory for Ocean Sciences 60 Bigelow Drive, P.O. Box 380 East Boothbay, Maine 04544 http://www.bigelow.org ______________________________________________ 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.