信不信由你,在分析当前代码后,执行numpy数组还原的重复操作会占用大量运行时间。我现在拥有的是基于视图的常见方法:
reversed_arr = arr[::-1]
还有其他方法可以更有效地执行此操作,还是我对不切实际的numpy性能的痴迷所致的幻觉?
创建时,reversed_arr
您正在创建原始数组的视图。然后,您可以更改原始数组,并且视图将更新以反映所做的更改。
您是否经常需要重新创建视图?您应该能够执行以下操作:
arr = np.array(some_sequence)
reversed_arr = arr[::-1]
do_something(arr)
look_at(reversed_arr)
do_something_else(arr)
look_at(reversed_arr)
我不是numpy专家,但这似乎是用numpy做事的最快方法。如果这是您已经在做的事情,我认为您无法对此进行改进。
PS这里很好的numpy视图讨论:
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句