bdiagMat: Create a Block Diagonal Matrix

View source: R/bdiagMat.R

bdiagMatR Documentation

Create a Block Diagonal Matrix

Description

It creates a block diagonal matrix from a list of numeric or character matrices.

Usage

bdiagMat(x)

Arguments

x

A list of numeric or character matrices (or values)

Value

A numeric or character block diagonal matrix

Author(s)

Mike W.-L. Cheung <mikewlcheung@nus.edu.sg>

References

It was based on a function posted by Scott Chasalow at http://www.math.yorku.ca/Who/Faculty/Monette/pub/stmp/0827.html.

See Also

bdiagRep, matrix2bdiag

Examples

## Block diagonal matrix of numbers
bdiagMat( list(matrix(1:4,nrow=2,ncol=2),
               matrix(5:6,nrow=1,ncol=2)) )
#      [,1] [,2] [,3] [,4]
# [1,]    1    3    0    0
# [2,]    2    4    0    0
# [3,]    0    0    5    6

## Block diagonal matrix of characters
bdiagMat( list(matrix(letters[1:4],nrow=2,ncol=2),
               matrix(letters[5:6],nrow=1,ncol=2)) )
#      [,1] [,2] [,3] [,4]
# [1,] "a"  "c"  "0"  "0" 
# [2,] "b"  "d"  "0"  "0" 
# [3,] "0"  "0"  "e"  "f" 

metaSEM documentation built on Aug. 10, 2023, 1:09 a.m.