scipy.sparse.
bmat#
- scipy.sparse.bmat(blocks, format=None, dtype=None)[source]#
从稀疏块中构建稀疏数组或矩阵
注:
block_array
比bmat
更热衷。它们是除了bmat
能返回一个弃用的稀疏矩阵外其他都相同。如果没有任何输入是稀疏矩阵,则bmat
将返回一个coo_matrix。警告
此函数返回一个稀疏矩阵——而不是稀疏数组。建议您使用
block_array
以利用稀疏数组的功能。- 参数:
- blocksarray_like
兼容形状的稀疏矩阵网格。如果某个条目是 None,则表示一个全零矩阵。
- 格式{'bsr', 'coo', 'csc', 'csr', 'dia', 'dok', 'lil'},可选
结果的稀疏格式(例如“csr”)。默认情况下,将返回一种合适的稀疏矩阵格式。此选择可能发生变化。
- 数据类型数据类型,可选
输出矩阵的数据类型。如果未给出,将根据块的类型确定数据类型。
- 返回:
- bmat稀疏矩阵或数组
如果块中的任一元素为稀疏数组,则返回一个稀疏数组。否则,返回一个稀疏矩阵。
如果您希望从不是稀疏数组的块中构建稀疏数组,请使用block_array()。
另请参阅
示例
>>> 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]])