Thank you! That solves my a) problem!
Best, Ales -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Gabor Grothendieck Sent: Tuesday, January 17, 2006 4:55 PM To: Aleš Žiberna Cc: [email protected] Subject: Re: [R] Printing numerical matrices Here are a couple of alternatives to try: noquote(format(round(M,3))) noquote(apply(round(M,3), 2, format)) On 1/17/06, Aleš Žiberna <[EMAIL PROTECTED]> wrote: > Dear useRs! > > I athought this was a trival question, however I could not fin dan > answer in the help files for print, format or formatC. I would like to > print a numerical matrix so that all cells (all rows/colums) are printed: > a) with the same number of decimal places (numbers after the decimal > separator) > b) with the same number of numbers (regardless of ".") > c) with the same number of characters (including "." if present, with > option for ignoring or not the "-" sign)) - if the last character > would be ".", it is ommited. > > Let say I have a matrix M > [,1] [,2] [,3] [,4] [,5] > [1,] 1 -0.87330578 14.72961 1.0885293 101 > [2,] 2 -0.61406616 13.63638 -0.3124361 102 > [3,] 3 -0.03322147 15.15509 -1.6021408 103 > [4,] 4 1.58780140 15.00857 -0.1908761 104 > [5,] 5 0.75340104 14.80913 0.3210328 105 > > Which you can get (at least similar) by: > M<- matrix(rnorm(25),ncol=5,nrow=5) > M[,1]<-1:5 > M[,3]<-M[,3]+15 > M[,5]<-101:105 > > > If I select the number of 3, I want to get: > a) > [,1] [,2] [,3] [,4] [,5] > [1,] 1.000 -0.873 14.729 1.088 101.000 > [2,] 2.000 -0.614 13.636 -0.312 102.000 > [3,] 3.000 -0.033 15.155 -1.602 103.000 > [4,] 4.000 1.588 15.009 -0.190 104.000 > [5,] 5.000 0.753 14.809 0.321 105.000 > > b) > [,1] [,2] [,3] [,4] [,5] > [1,] 1.00 -0.87 14.7 1.09 101 > [2,] 2.00 -0.61 13.6 -0.31 102 > [3,] 3.00 -0.03 15.2 -1.60 103 > [4,] 4.00 1.58 15.0 -0.19 104 > [5,] 5.00 0.75 14.8 0.32 105 > > c) (ignoring "-" sign) > [,1] [,2] [,3] [,4] [,5] > [1,] 1.0 -0.9 14 1.1 101 > [2,] 2.0 -0.6 14 -0.3 102 > [3,] 3.0 -0.0 15 -1.6 103 > [4,] 4.0 1.6 15 -0.2 104 > [5,] 5.0 0.8 15 0.3 105 > > c) (counting the "-" sign) > [,1] [,2] [,3] [,4] [,5] > [1,] 1.0 -1 14 1.1 101 > [2,] 2.0 -1 14 -0 102 > [3,] 3.0 -0 15 -2 103 > [4,] 4.0 1.6 15 -0 104 > [5,] 5.0 0.8 15 0.3 105 > > > I would appreciate a solution for any of those options. > > Best regards, > Ales > > ______________________________________________ > [email protected] mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide! > http://www.R-project.org/posting-guide.html > ______________________________________________ [email protected] mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html ______________________________________________ [email protected] mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
