Scipyで、非零の要素が−1.0から1.0の一様分布で、
ランダムなスパース行列を生成したいです。

単純に、Scipyのrandを用いて

scipy.sparse.rand(m, n)

と書くと、要素は0.0から1.0の一様分布なので、
非零の値がすべて正になってしまいます。

ランダムなスパース行列の生成の際に、
非零要素値の上限下限を変える
効率の良い方法はあるでしょうか?

よろしくお願いします。