我目前正在python中编写一个需要生成大量随机数的应用程序.FAST.目前我有一个方案,使用numpy生成一个巨大的批次中的所有数字(一次大约约500,000).虽然这似乎比python的实现更快.我仍然需要它更快.有任何想法吗?我愿意用C语言编写它并将其嵌入程序中或者用它来完成它.
对随机数的限制:
有任何想法吗?预先计算这些数字并将它们存储在一个文件中会使这更快吗?
谢谢!
我的 google-fu 失败了!我有一个 10x10 numpy 数组,初始化如下0:
arr2d = np.zeros((10,10))
Run Code Online (Sandbox Code Playgroud)
对于 中的每一行arr2d,我想将 3 个随机列分配给1。我可以使用循环来完成此操作,如下所示:
for row in arr2d:
rand_cols = np.random.randint(0,9,3)
row[rand_cols] = 1
Run Code Online (Sandbox Code Playgroud)
输出:
array([[ 0., 0., 0., 0., 0., 0., 1., 1., 1., 0.],
[ 0., 0., 0., 0., 1., 0., 0., 0., 1., 0.],
[ 0., 0., 1., 0., 1., 1., 0., 0., 0., 0.],
[ 0., 0., 0., 0., 1., 1., 1., 0., 0., 0.],
[ 1., 0., 0., 1., 1., …Run Code Online (Sandbox Code Playgroud)