[R] block matrices

Duncan Murdoch murdoch at stats.uwo.ca
Wed Feb 24 17:19:24 CET 2010


On 24/02/2010 10:56 AM, Gustave Lefou wrote:
> Dear all,
>
> I do not know how to deal with block matrices in R.
>
> For example I have 3 matrices A, B and C.
>
> And I want to produce a new matrix of this form
>
> ( A B 0 )
> ( 0 0 C )
>
> where A, B and C are one-row matrices.
>   

The problem is that mathematical notation like that assumes a bit of 
sophistication:  each of those 0 matrices is potentially different.  So 
you might need to write a little helper function to build them, e.g.

zero <- function(rowMatrix, colMatrix) {
  matrix(0, nrow = nrow(rowMatrix), ncol=ncol(colMatrix))
}

then

block <- rbind( cbind(A, B, zero(A, C)),
                        cbind(zero(C, A), zero(C, B), C) )

Duncan Murdoch
> Apart from A, B and C, all the coefficients are 0.
>
> Is there an easy solution in R for every block matrices ?
>
> Thanks for your help,
> Gustave
>
> P.S. : I have had a look at a function called "zoo" which looked quite
> complicated to me.
>
> 	[[alternative HTML version deleted]]
>
> ______________________________________________
> R-help at 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.
>



More information about the R-help mailing list