为了在Python中使用期望值为1.0,标准差为0.005的高斯函数生成100个正态分布的随机数,可以使用
numpy.random.normal
函数,如下所示。
import numpy as np
random_numbers = np.random.normal(1.0, 0.005, 100)
为了将
random_numbers
存储在数组中,可以使用
numpy.array
来实现,具体如下:
random_numbers_array = np.array(random_numbers)
然后使用{{link1:numpy.mean
}}来计算平均值。
mean = np.mean(random_numbers_array)
而要计算标准差,则使用以下方式numpy.std
std = np.std(random_numbers_array)
一个函数,它以随机数生成器的平均值和标准差作为输入,并执行 OP 希望实现的功能,可能是这样的:
def uniformrandom(mean, std):
random_numbers = np.random.normal(mean, std, 100)
random_numbers_array = np.array(random_numbers)
mean = np.mean(random_numbers_array)
std = np.std(random_numbers_array)
return random_numbers_array, mean, std
让我们看看它检索到了什么
print(uniformrandom(1.0, 0.005))
[Out]:
(array([1.00716042, 0.99938042, 0.99178698, 1.00791888, 1.00623344,
1.00555578, 0.99890757, 1.00695046, 0.98482516, 0.9928371 ,
1.00016377, 0.99510195, 1.00280951, 0.99472607, 0.99453582,
1.00791222, 1.00302319, 1.00004503, 0.99884054, 1.00429994,
0.99591756, 1.010769 , 1.00827643, 0.996754 , 0.99236853,
1.00096622, 1.00092158, 1.00192217, 1.00148108, 0.9975529 ,
1.00953799, 1.0073464 , 0.99942883, 1.0065139 , 1.00265884,
1.00885268, 0.99613224, 1.00299541, 0.99977556, 1.01090735,
1.00132776, 0.99711267, 1.00129545, 1.00500702, 0.99937595,
1.00603761, 0.98960716, 0.99932355, 0.99687272, 1.00332839,
0.991147 , 0.99643908, 0.99279811, 1.00112179, 1.00012058,
0.9989405 , 1.00150169, 1.00683601, 0.99885708, 0.99632519,
1.00112315, 0.99280336, 1.00759542, 1.00140661, 1.00183764,
0.99540866, 1.0002343 , 0.99421579, 1.01169739, 1.00330142,
0.99977923, 1.00365608, 0.9984007 , 1.00106568, 1.00349778,
0.99527499, 0.99189253, 0.99477082, 0.99486919, 0.99784054,
0.99240925, 1.00417557, 0.99566904, 1.00355492, 0.99717846,
0.99910477, 0.99718301, 1.00711659, 0.99623698, 1.00143697,
1.00876763, 1.0049953 , 0.99885742, 0.99498201, 1.00324752,
0.99907905, 0.99762597, 0.99502917, 0.99511507, 1.00991401]), 1.0002981820807302, 0.005332038881947385)
uniformrandom
函数没有返回任何值,因此在您的代码中L
为空(仅包含None
值)。 - Ludwik Trammeri
直到它等于n
,然后返回它。 - Peter Wood