rand#
- scipy.sparse.rand(m, n, density=0.01, format='coo', dtype=None, rng=None)[source]#
產生具有給定形狀和密度的均勻分佈值的稀疏矩陣。
警告
此函數返回一個稀疏矩陣 – 而不是稀疏陣列。 建議您使用
random_array
以利用稀疏陣列功能。- 參數:
- m, nint
矩陣的形狀
- densityreal, optional
生成矩陣的密度:密度等於 1 表示完整矩陣,密度為 0 表示沒有非零項目的矩陣。
- formatstr, optional
稀疏矩陣格式。
- dtypedtype, optional
返回的矩陣值的類型。
- rng{None, int,
numpy.random.Generator
}, optional 如果通過關鍵字傳遞 rng,則
numpy.random.Generator
以外的類型會傳遞給numpy.random.default_rng
以實例化Generator
。 如果 rng 已經是Generator
實例,則使用提供的實例。 指定 rng 以獲得可重複的函數行為。如果此參數通過位置傳遞,或 random_state 通過關鍵字傳遞,則參數 random_state 適用舊版行為
如果 random_state 為 None (或
numpy.random
),則使用numpy.random.RandomState
單例。如果 random_state 是一個整數,則使用新的
RandomState
實例,並以 random_state 作為種子。如果 random_state 已經是
Generator
或RandomState
實例,則使用該實例。
變更於 1.15.0 版本:作為從使用
numpy.random.RandomState
過渡到numpy.random.Generator
的 SPEC-007 過渡的一部分,此關鍵字已從 random_state 變更為 rng。 在過渡期間,這兩個關鍵字將繼續有效,但一次只能指定一個。 在過渡期之後,使用 random_state 關鍵字的函數呼叫將發出警告。 上面概述了 random_state 和 rng 的行為,但在新程式碼中應僅使用 rng 關鍵字。
- 返回:
- res稀疏矩陣
參見
random
類似的函數,允許自訂隨機資料取樣器
random_array
類似於 random() 但返回稀疏陣列
筆記
目前僅支援浮點類型。
範例
>>> from scipy.sparse import rand >>> matrix = rand(3, 4, density=0.25, format="csr", rng=42) >>> matrix <Compressed Sparse Row sparse matrix of dtype 'float64' with 3 stored elements and shape (3, 4)> >>> matrix.toarray() array([[0.05641158, 0. , 0. , 0.65088847], # random [0. , 0. , 0. , 0.14286682], [0. , 0. , 0. , 0. ]])