bundles / scipy 2.0.0.dev0+git20260907.41eeb59 / scipy / sparse / _construct / bmat
function
scipy.sparse._construct:bmat
source: build-install/usr/lib/python3.14/site-packages/scipy/sparse/_construct.py:1224
Signature
def bmat(blocks, format = None, dtype = None)Summary
Build a sparse array or matrix from sparse sub-blocks.
Extended Summary
Note: block_array is preferred over bmat. They are the same function except that bmat returns a deprecated sparse matrix when none of the inputs are sparse arrays.
Parameters
blocks: array_likeGrid of sparse matrices with compatible shapes. An entry of None implies an all-zero matrix.
format: {'bsr', 'coo', 'csc', 'csr', 'dia', 'dok', 'lil'}, optionalThe sparse format of the result (e.g. "csr"). By default an appropriate sparse matrix format is returned. This choice is subject to change.
dtype: dtype, optionalThe data-type of the output matrix. If not given, the dtype is determined from that of
blocks.
Returns
bmat: sparse matrix or arrayIf any block in blocks is a sparse array, return a sparse array. Otherwise return a sparse matrix.
If you want a sparse array built from blocks that are not sparse arrays, use
block_array().
Examples
from scipy.sparse import coo_array, bmat A = coo_array([[1, 2], [3, 4]]) B = coo_array([[5], [6]]) C = coo_array([[7]]) bmat([[A, B], [None, C]]).toarray()✓
array([[1, 2, 5],
[3, 4, 6],
[0, 0, 7]])
bmat([[A, None], [None, C]]).toarray()
✓array([[1, 2, 0],
[3, 4, 0],
[0, 0, 7]])
See also
Aliases
scipy.sparse.bmat