scipy.sparse.

rand#

scipy.sparse.rand(m, n, density=0.01, format='coo', dtype=None, random_state=None)[source]#

生成具有均匀分布的值的给定形状和密度的稀疏矩阵。

警告

此函数返回的是稀疏矩阵,而不是稀疏数组。建议您使用 random_array 充分利用稀疏数组功能。

参数:
m, nint

矩阵的形状

densityreal, 可选

生成矩阵的密度:密度等于 1 表示满矩阵,密度为 0 表示不带非零元素的矩阵。

formatstr, 可选

稀疏矩阵格式。

dtypedtype, 可选

返回的矩阵值的类型。

random_state{None, int, numpy.random.Generator,

如果 seed 为 None(或 np.random),则将使用 numpy.random.RandomState 单例。如果 seed 为 int,则将使用新的 RandomState 实例,并使用 seed 播种。如果 seed 已是 GeneratorRandomState 实例,则将使用该实例。

返回:
res稀疏矩阵

请参见

随机

允许自定义随机数据采样器的类似函数

random_array

类似于 random(),但返回稀疏数组

笔记

目前仅支持浮点类型。

示例

>>> from scipy.sparse import rand
>>> matrix = rand(3, 4, density=0.25, format="csr", random_state=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.        ]])