Python中如何对numpy二维数组各列元素分别进行求和运算
Numpy二维数组按列求和实现方法
操作很简单,用numpy的列索引搭配sum()方法就可以实现需求,两种常用方案如下:
方案1:单独提取目标列分别求和
如果你只需要计算特定列的和,可以直接索引对应列后调用求和方法:
import numpy as np # 示例数组 a = np.array([[1,2], [2,5], [4,8]]) # [:,0] 表示取所有行的第0列(所有x值),求和得到7 sum_x = a[:, 0].sum() # [:,1] 表示取所有行的第1列(所有y值),求和得到15 sum_y = a[:, 1].sum() print(f"{sum_x}, {sum_y}") # 输出 7, 15,匹配要求的输出格式
方案2:一次性对所有列求和
如果需要对数组所有列分别求和,可以直接指定sum的axis参数为0,按列聚合一次得到所有结果:
# axis=0 代表沿着行维度对每一列做聚合计算 sum_x, sum_y = a.sum(axis=0) print(f"{sum_x}, {sum_y}") # 同样输出 7, 15
- 补充说明:numpy中
axis参数的逻辑是,指定哪个维度就把哪个维度消掉做聚合,二维数组指定axis=0就会把行维度消掉,最终得到和列数等长的结果。
内容的提问来源于stack exchange,提问作者ecaterinajukova
相关产品推荐
相关产品推荐

