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

如何根据另一NumPy数组的元素筛选并求和目标数组元素?

用NumPy实现对应位置元素筛选求和

直接利用NumPy的布尔索引就能简便实现这个需求,代码示例如下:

import numpy as np

arr1 = np.array([10, 20, 15, 0, 45, 100])
arr2 = np.array([0,   3,  1, 6,  0,   0])

# 筛选arr1中对应arr2元素为0的项并求和
total = arr1[arr2 == 0].sum()
print(total)  # 输出结果:155

原理说明

  • arr2 == 0会生成一个布尔数组[True, False, False, False, True, True],精准标记出arr2中元素为0的位置
  • 用该布尔数组作为索引提取arr1的元素,直接得到目标子集[10, 45, 100]
  • 调用sum()方法即可快速计算子集的和

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.06 22:22:34