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

如何使用numpy计算数组中满足指定条件的元素占比

Numpy 数组满足指定条件元素占比计算方法

核心逻辑

Numpy 支持数组级别的批量判断,对数组使用比较运算符会返回布尔数组,数组中符合条件的位置对应值为True,不符合为False。数值计算时True会被视为1,False视为0,基于这个特性可以快速统计符合条件的元素数量。

实现方式

方式1:分步统计(适配需要单独获取符合条件数量的场景)

  • 第一步:执行条件判断得到布尔数组
  • 第二步:对布尔数组执行sum运算,得到符合条件的元素总数
  • 第三步:用符合条件的元素总数除以数组总长度,得到占比
    示例代码:
import numpy as np
# 定义示例数组
arr = np.array([1,3,4,20,40,50,3,5])
# 统计大于20的元素数量
valid_num = np.sum(arr > 20)
# 数组总元素数
total_num = np.size(arr)
# 计算占比
ratio = valid_num / total_num
print(ratio) # 输出结果为0.25

方式2:一步计算(更简洁)

直接对布尔数组执行mean运算,会自动计算True的占比,无需手动计算总长度:

import numpy as np
arr = np.array([1,3,4,20,40,50,3,5])
ratio = np.mean(arr > 20)
print(ratio) # 输出结果为0.25

补充说明:如果需要修改判断规则,只需要替换arr > 20为对应的条件即可,比如arr >= 20(大于等于20)、arr < 5(小于5)、arr == 3(等于3)等规则都适用。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 06:06:05