scipy.sparse.

bmat#

scipy.sparse.bmat(блоки, формат=None, dtype=None)[источник]#

Построить разреженный массив или матрицу из разреженных подблоков

Примечание: block_array предпочтительнее, чем bmat. Это одна и та же функция, за исключением того, что bmat возвращает устаревшую разреженную матрицу, когда ни один из входов не является разреженным массивом.

Предупреждение

Эта функция возвращает разреженную матрицу, когда ни один из входных данных не является разреженным массивом. Рекомендуется использовать block_array чтобы воспользоваться функциональностью разреженных массивов.

Параметры:
блокиarray_like

Сетка разреженных матриц с совместимыми формами. Запись None подразумевает полностью нулевую матрицу.

формат{‘bsr’, ‘coo’, ‘csc’, ‘csr’, ‘dia’, ‘dok’, ‘lil’}, опционально

Разреженный формат результата (например, "csr"). По умолчанию возвращается подходящий формат разреженной матрицы. Этот выбор может измениться.

dtypedtype, опционально

Тип данных выходной матрицы. Если не указан, dtype определяется из блоки.

Возвращает:
bmatразреженная матрица или массив

Если любой блок в blocks является разреженным массивом, возвращает разреженный массив. В противном случае возвращает разреженную матрицу.

Если вы хотите разреженный массив, построенный из блоков, которые не являются разреженными массивами, используйте block_array().

Смотрите также

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]])