我有一个像这样工作的函数:
def Function(x):
a = random.random()
b = random.random()
c = OtherFunctionThatReturnsAThreeColumnArray()
results = np.zeros((1,5))
results[0,0] = a
results[0,1] = b
results[0,2] = c[-1,0]
results[0,3] = c[-1,1]
results[0,4] = c[-1,2]
return results
我要做的是多次运行此函数,将返回的一行 5 列结果附加到正在运行的数据集中。但是,据我所知,append 函数和 for 循环的效率都非常低,而且我都在尝试改进我的代码,并且运行次数将足够大,以至于这种低效率对我不起作用任何好处。
执行以下操作的最佳方法是什么,以使开销最小:
- 创建一个新的 numpy 数组来保存结果
- 将该函数的 N 次调用的结果插入到 1 中的数组中?