Use do.call(func, listOfArgs) when you don't know how many arguments will be passed to func. E.g., > x <- cbind(round(sin(1:10)), round(cos(1:10)), round(tan(1:10))) > x[do.call("order", split(x, col(x))), , drop=FALSE] [,1] [,2] [,3] [1,] -1 -1 1 [2,] -1 -1 1 [3,] -1 0 -3 [4,] 0 -1 0 [5,] 0 -1 0 [6,] 0 1 0 [7,] 1 0 -7 [8,] 1 0 -2 [9,] 1 1 1 [10,] 1 1 2
Bill Dunlap Spotfire, TIBCO Software wdunlap tibco.com > -----Original Message----- > From: r-help-boun...@r-project.org [mailto:r-help-boun...@r-project.org] On > Behalf Of Maxim > Sent: Friday, September 23, 2011 9:22 AM > To: r-help > Subject: [R] sorting multiple columns of a matrix > > Hi, > > > I have a question about how to sort a matrix for multiple columns. > > > dat<-sample(0:1,1000,replace=T) > > matrix(dat,ncol=5,nrow=200)->x > > > I want to order like the following: > > > x[order(x[,1],x[,2],x[,3],x[,4],x[,5]),]->x > > > My problem: the number of columns of the matrix to be sorted is variable, in > any way I would like to sort for all columns from 1:ncol(x). How to achieve > this? > > > Best > > > Maxim > > [[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.