2016-02-25 28 views
0

我正在使用numpy的random.normal例程來創建具有給定均值和標準差的高斯。從np.random.normal創建的數組的大小

array_a = an array of len(100) 

gaussian = np.random.normal(loc=array_a,scale=0.1,size=len(2*array_a)) 

所以我希望gaussian有一個mean=array_astddev=0.1gaussian數組的大小爲2倍array_a但是,上面給我的數組的大小與array_a的大小相同!

如何獲得len(gaussian)2倍len(array_a)與給定meanstandard deviation

回答

1

你要多樣信息len(array_a) * 2代替len(array_a * 2)loc=array_a.mean() 嘗試:

import numpy as np 

array_a = np.arange(100) 
gaussian = np.random.normal(loc=array_a.mean(), scale=0.1, size=2 * len(array_a)) 

現在gaussian.size200gaussian.mean()等於array_a.mean()

+0

我想意味着'array_a'中的每個值,而不是'array_a'的平均值。 – ThePredator

+0

所以你想100高斯作爲輸出? –

+0

不! '高斯'中的每個值都有不同的意思。即第一個「高斯」值將具有「array_a」的「mean = first object」,依此類推。 – ThePredator

相關問題