我编写了下面的numpython测试脚本来获得某些输入的正态分布。我想我可能没有有效地使用NumPy的向量运算来处理输入数据。
你能给我演示一下处理输入的方法吗?
import numpy as np
#Inputs
mu = np.array( [1, 2, 3, 4, 5, 6, 7, 8, 9], dtype='uint8' )
sigma = np.array( [1., 1., 1., 1., 1., 3., 3., 3., 3., 3.] )
number = np.array( [ 5, 10, 15, 20, 25, 25, 20, 15, 10, 5 ], dtype='uint16' )
#Processing
np.random.seed(0)
norms = [ np.random.normal(i, sigma[n], number[n]) for n, i in enumerate(mu) ]
print( norms )
a = np.concatenate( [ np.ceil(i) for i in norms ] )
print( a )
#Output
result = np.histogram( a, bins=np.arange(np.amin(a), np.amax(a)+1, 1, dtype='uint8' ) )
print( result )