Numpy随机正常的列

时间:2016-12-12 23:45:38

标签: python numpy scipy

我尝试生成NumPy ndarray,其c列和n行但填充了random {中的数字{1}}分发。我希望分布在列上正常,即我希望列normal的值接近均值(使c/2列中的随机数高于列c/2中的随机数它的左边或右边)。

是否有内置的NumPy功能?

如果还没有,我们是否可以在NumPy随机正常中指定给我们分布带内的值,以便我可以单独填充列?

1 个答案:

答案 0 :(得分:2)

你可以这样做:

scales = [0.01, 0.1, 1, 0.1, 0.01]
arrays = [np.random.normal(loc=0, scale=s, size=(3)) for s in scales]
np.vstack(arrays).T

array([[ 0.0021688 , -0.11704194,  0.84077943,  0.13570005, -0.01371024],
       [ 0.01726078, -0.00167188, -0.85074286,  0.01729595,  0.00696604],
       [ 0.00169041, -0.11899872,  0.34075113,  0.08299408,  0.00296036]])