查找一维向量中大于或小于某一值的所有连续片段

文章目录

经常会遇到一种场景,那就是有一个一维向量,我们要找到其中所有大于设定阈值的片段。就好比电路中有高代电平,我们要找连续的高电平段或低电平:

如上图,我们只要标红的高电平,对应代码:

python 复制代码
import numpy as np

def extract_segments(v, a):
    """v是向量,a是我们设定的阈值

    Args:
        v (_type_): _description_
        a (_type_): _description_

    Returns:
        _type_: _description_
    """
    segments = []
    current_segment = []
    for i in range(len(v)):
        if v[i] > a:
            current_segment.append(v[i])
        else:
            if len(current_segment) > 0:
                segments.append(current_segment)
                current_segment = []
    if len(current_segment) > 0:
        segments.append(current_segment)
    return segments

测试结果:

相关推荐
亿牛云爬虫专家24 分钟前
Kubernetes下的分布式采集系统设计与实战:趋势监测失效引发的架构进化
分布式·python·架构·kubernetes·爬虫代理·监测·采集
蹦蹦跳跳真可爱5894 小时前
Python----OpenCV(图像増强——高通滤波(索贝尔算子、沙尔算子、拉普拉斯算子),图像浮雕与特效处理)
人工智能·python·opencv·计算机视觉
nananaij5 小时前
【Python进阶篇 面向对象程序设计(3) 继承】
开发语言·python·神经网络·pycharm
雷羿 LexChien5 小时前
从 Prompt 管理到人格稳定:探索 Cursor AI 编辑器如何赋能 Prompt 工程与人格风格设计(上)
人工智能·python·llm·编辑器·prompt
敲键盘的小夜猫5 小时前
LLM复杂记忆存储-多会话隔离案例实战
人工智能·python·langchain
高压锅_12206 小时前
Django Channels WebSocket实时通信实战:从聊天功能到消息推送
python·websocket·django
胖达不服输7 小时前
「日拱一码」020 机器学习——数据处理
人工智能·python·机器学习·数据处理
吴佳浩7 小时前
Python入门指南-番外-LLM-Fingerprint(大语言模型指纹):从技术视角看AI开源生态的边界与挑战
python·llm·mcp
吴佳浩8 小时前
Python入门指南-AI模型相似性检测方法:技术原理与实现
人工智能·python·llm
叶 落8 小时前
计算阶梯电费
python·python 基础·python 入门