You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在numpy数组中实现列间向量化加法?求高效实现方式

对NumPy数组列执行向量化加法的最快方式

你写的Python循环虽然能实现功能,但完全没利用NumPy的向量化优势——Python级别的循环在处理大规模数组时效率极低。最快的实现方式直接用NumPy的切片操作完成元素级加法:

import numpy

ary = numpy.array([[1,2,3],[3,4,5],[5,6,7],[7,8,9],[9,10,11]])
# 直接对整列执行向量化加法
ary[:, 0] += ary[:, 1]

效果说明

执行后数组第一列的每个元素都会加上对应行第二列的元素,最终结果为:

[[ 3  2  3]
 [ 7  4  5]
 [11  6  7]
 [15  8  9]
 [19 10 11]]

为什么这是最快的?

NumPy的切片操作直接在底层(C语言级别)处理连续内存块的元素,完全避开了Python循环的解释器开销。对于大规模数组,这种向量化操作的速度会比你写的循环快几个数量级——数组越大,优势越明显。

内容的提问来源于stack exchange,提问作者Brad

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 16:06:40