小编Jus*_*eve的帖子

为什么 Numpy 创建零数组比用零替换现有数组的值要快得多?

我有一个用于跟踪各种值的数组。数组的2500x1700大小,所以不是很大。在会话结束时,我需要将该数组中的所有值重置为零。我尝试创建一个新的零数组并将数组中的所有值替换为零,并且创建一个全新的数组要快得多。

\n

代码示例:

\n
for _ in sessions:\n    # Reset our array\n    tracking_array[:,:] = 0\n\n1.44 s \xc2\xb1 19.1 ms per loop (mean \xc2\xb1 std. dev. of 7 runs, 1 loop each)\n
Run Code Online (Sandbox Code Playgroud)\n

相对

\n
for _ in sessions:\n    # Reset our array\n    tracking_array = np.zeros(shape=(2500, 1700))\n\n7.26 ms \xc2\xb1 133 \xc2\xb5s per loop (mean \xc2\xb1 std. dev. of 7 runs, 100 loops each)\n
Run Code Online (Sandbox Code Playgroud)\n

与仅替换数组中的值相比,为什么创建全新的数组要快得多?

\n

python arrays performance numpy

5
推荐指数
1
解决办法
1089
查看次数

标签 统计

arrays ×1

numpy ×1

performance ×1

python ×1