scipy.sparse.
bmat#
- scipy.sparse.bmat(blocks, format=None, dtype=None)[source]#
從稀疏子區塊建立稀疏陣列或矩陣
注意:
block_array
優先於bmat
。它們是相同的函式,除了bmat
可能會傳回已棄用的稀疏矩陣。bmat
在沒有任何輸入是稀疏陣列的情況下會傳回 coo_matrix。警告
此函式會傳回稀疏矩陣 – 而非稀疏陣列。 建議您使用
block_array
以利用稀疏陣列的功能。- 參數:
- blocksarray_like (類陣列)
具有相容形狀的稀疏矩陣網格。 None 的條目表示全零矩陣。
- format{‘bsr’, ‘coo’, ‘csc’, ‘csr’, ‘dia’, ‘dok’, ‘lil’}, 選填
結果的稀疏格式 (例如 “csr”)。 預設情況下,會傳回適當的稀疏矩陣格式。 此選擇可能會變更。
- dtypedtype, 選填
輸出矩陣的資料型別。 如果未給定,dtype 會從 blocks 的資料型別判斷。
- 傳回值:
- bmat稀疏矩陣或陣列
如果 blocks 中的任何區塊是稀疏陣列,則傳回稀疏陣列。 否則傳回稀疏矩陣。
如果您想要從非稀疏陣列的區塊建立稀疏陣列,請使用
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]])