rand#
- scipy.sparse.rand(m, n, density=0.01, format='coo', dtype=None, rng=None)[源代码]#
生成具有给定形状和密度的均匀分布值的稀疏矩阵。
警告
此函数返回一个稀疏矩阵 - 而不是稀疏数组。 建议使用
random_array
来利用稀疏数组的功能。- 参数:
- m, nint
矩阵的形状
- density实数, 可选
生成矩阵的密度:密度为 1 表示完整矩阵,密度为 0 表示没有非零项的矩阵。
- formatstr, 可选
稀疏矩阵格式。
- dtypedtype, 可选
返回的矩阵值的类型。
- rng{None, int,
numpy.random.Generator
}, 可选 如果通过关键字传递 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 为 int,则使用新的
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. ]])