如何在Julia中创建具有[-1,1]均匀分布的稀疏矩阵

时间:2019-03-06 07:16:48

标签: julia

我阅读了sprandn的{​​{3}}简介,并尝试创建一个遵循[-1,1]均匀分布的稀疏矩阵。

using SparseArrays
using Distributions
sprandn(100,100,0.3,Uniform(-1,1))

但是失败了。对于尚未粘贴错误日志,我深表歉意。这是错误在this中所说的图像。

那么如何生成[-1,1]均匀分布的稀疏矩阵?

1 个答案:

答案 0 :(得分:1)

sprandn用于从标准法线采样。但是,您可以使用一种sprand的方法:

sprand(m::Integer, n::Integer, density::AbstractFloat, rfn::Function)

最后一个参数是内部用于对非零值进行采样的函数,您可以像这样使用它:

D = Uniform(-1.0, 1.0)
rf(n) = rand(D, n)
sprand(100, 100, 0.3, rf)

如果要指定使用的RNG,则需要将其作为另一个自变量传递到rf中。