[R] How to print matrices in standard format was ... Re: How to define new matrix based on an elementary row oper

2010-09-12 Thread David Winsemius


On Sep 12, 2010, at 11:27 AM, Cuckovic Paik wrote:



I appreciate all you help. This is only for instructional purpose:

A = matrix(c(0,1,1,-2,-3,1,2,-1,0,2,2,4,1,-3,-2,1,-4,-7,-1,-19),  
ncol=5,

byrow=T)
B  
=matrix(sample(c(0,1,1,-2,-3,1,2,-1,0,2,2,4,1,-3,-2,1,-4,-7,-1,-19),),

ncol=5, byrow=T)

Which print func( A, B,  A+B) can print the resulting matrices A and  
B and

A+B  in the following format?

[,1] [,2] [,3] [,4] [,5] [,1] [,2] [,3] [,4] [,5]
[,1]  [,2]  [,3]  [,4] [,5]
[1,]011   -2   -3   [1,]  2   -102  
1[1,]

2 0 1 0-2
[2,]12   -102   +   [2,]  1   -42   -2-2
=  [2,]

2-2 1-2 0
[3,]241   -3   -2   [3,] -31   -71 
-1   [3,]

-1 5-6-2-3
[4,]1   -4   -7   -1  -19  [4,] -304  -19 1   
[4,] -2

-4-3   -20   -18



for( i in 1:nrow(A) ) { cat(sprintf(%4.0f, A[i, ]), paste(   
,if( i==3 ){+}else{ },  , sep=),sprintf(%4.0f,B[i, ]),  
paste(  ,if( i==3 ){=}else{ },  , sep=), sprintf(%4.0f, (A 
+B)[i, ]), \n )}


--

David Winsemius, MD
West Hartford, CT

__
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.


Re: [R] How to print matrices in standard format was ... Re: How to define new matrix based on an elementary row oper

2010-09-12 Thread David Winsemius


On Sep 12, 2010, at 12:24 PM, David Winsemius wrote:



On Sep 12, 2010, at 11:27 AM, Cuckovic Paik wrote:



I appreciate all you help. This is only for instructional purpose:

A = matrix(c(0,1,1,-2,-3,1,2,-1,0,2,2,4,1,-3,-2,1,-4,-7,-1,-19),  
ncol=5,

byrow=T)
B  
= 
matrix(sample(c(0,1,1,-2,-3,1,2,-1,0,2,2,4,1,-3,-2,1,-4,-7,-1,-19),),

ncol=5, byrow=T)

Which print func( A, B,  A+B) can print the resulting matrices A  
and B and

A+B  in the following format?

   [,1] [,2] [,3] [,4] [,5] [,1] [,2] [,3] [,4] [, 
5][,1]  [,2]  [,3]  [,4] [,5]
[1,]011   -2   -3   [1,]  2   -102  
1[1,]  2 0 1 0-2
[2,]12   -102   +   [2,]  1   -42   -2-2
=[2,]  2-2 1-2 0
[3,]241   -3   -2   [3,] -31   -71 
-1[3,] -1 5-6-2-3
[4,]1   -4   -7   -1  -19   [4,] -304  -19  
1[4,] -2-4-3   -20   -18




for( i in 1:nrow(A) ) { cat(sprintf(%4.0f, A[i, ]), paste(   
,if( i==3 ){+}else{ },  , sep=),sprintf(%4.0f,B[i, ]),  
paste(  ,if( i==3 ){=}else{ },  , sep=), sprintf(%4.0f,  
(A+B)[i, ]), \n )}



 for( i in 1:nrow(A) ) { cat(sprintf(%4.0f, A[i, ]),
paste(  ,if( i==3 ){+}else{ },  ,  
sep=),

sprintf(%4.0f,B[i, ]),
paste(  ,if( i==3 ){=}else{ },  ,  
sep=),

sprintf(%4.0f, (A+B)[i, ]), \n )}

Even with the prettier printing it stilled seemed like a hack, so here  
is a grid graphics solution that gives prettier _output_:


require(grid)
 grid.newpage()
 pushViewport(plotViewport(c(5,4,2,2)))  # implicit limits are  
c(0,0,1,1) within plot area
 for (i in 1:nrow(A)) { for (j in 1:ncol(A)){grid.text(A[i,j], x=i/ 
20, y=j/20)}}  # plot mtx A
 for (i in 1:nrow(B)) { for (j in 1:ncol(B)){grid.text(B[i,j], x=(i 
+5)/20, y=j/20)}}  # B
 for (i in 1:nrow(B)) { for (j in 1:ncol(B)){grid.text(A[i,j] 
+B[i,j], x=(i+10)/20, y=j/20)}} # A+B

 grid.text(=, x=10/20, y=2.5/20)
 grid.text(+, x=5/20, y=2.5/20)







--

David Winsemius, MD
West Hartford, CT

__
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.


Re: [R] How to print matrices in standard format was ... Re: How to define new matrix based on an elementary row oper

2010-09-12 Thread Cuckovic Paik

Thanks David. grid graphic works pretty well. 
-- 
View this message in context: 
http://r.789695.n4.nabble.com/How-to-define-new-matrix-based-on-an-elementary-row-operation-in-a-single-step-tp2341768p2536785.html
Sent from the R help mailing list archive at Nabble.com.

__
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.