これを行うための最良の(最速の)方法は何ですか?
これは私が正しいと信じているものを生成しますが、明らかに N = 10e6 では非常に遅いです。標準偏差を正しく計算できるように Xi 値を保持する必要があると思いますが、これをより速く実行するためのテクニックはありますか?
def randomInterval(a,b):
r = ((b-a)*float(random.random(1)) + a)
return r
N = 10e6
Sum = 0
x = []
for sample in range(0,int(N)):
n = randomInterval(-5.,5.)
while n == 5.0:
n = randomInterval(-5.,5.) # since X is [-5,5)
Sum += n
x = np.append(x, n)
A = Sum/N
for sample in range(0,int(N)):
summation = (x[sample] - A)**2.0
standard_deviation = np.sqrt((1./N)*summation)