重庆明镜滩项目-11-脚本学习-260122DataPreV5MissAna2

重庆明镜滩项目-11-脚本学习-260122DataPreV5MissAna2

问题1:这个脚本中任务2的代码我没看懂,详细介绍一下功能和代码

我来详细解释任务2的代码功能和实现逻辑。

任务2的功能目标

找出所有指标同时都没有缺失值的时间段。也就是说,某个时间点只有当所有指标都有数据时,这个时间点才算有效。

代码详细解析

# 构建所有指标的共同非缺失掩码
all_valid_mask = pd.notna(df.drop(columns=['InsertTime'])).all(axis=1).values
common_segments = find_continuous_segments(all_valid_mask)

第一行代码拆解:

步骤1: df.drop(columns=['InsertTime'])

  • 移除时间列,只保留指标数据列
  • 例如原本有15列(1个时间列+14个指标列),现在只剩14个指标列

步骤2: pd.notna(...)

  • 对每个单元格判断是否非缺失
  • 返回一个布尔值DataFrame,True表示有数据,False表示缺失(NaN)
  • 形状与原数据相同,例如10000行×14列

步骤3: .all(axis=1)

  • axis=1表示沿着列方向(横向)进行判断
  • 对每一行的所有列进行"与"运算
  • 只有当某行的所有指标都是True时,该行才返回True
  • 返回一个长度为10000的Series,每个值代表该时间点是否所有指标都有效

步骤4: .values

  • 转换为NumPy数组,方便后续处理

举例说明:

假设某个时间点的数据:

指标A: 5.2  (有值 → True)
指标B: NaN  (缺失 → False)
指标C: 3.1  (有值 → True)

经过 .all(axis=1) 后,这一行返回 False(因为指标B缺失)

如果所有指标都有值:

指标A: 5.2  (有值 → True)
指标B: 4.8  (有值 → True)
指标C: 3.1  (有值 → True)

这一行返回 True

第二行代码:

common_segments = find_continuous_segments(all_valid_mask)

调用辅助函数,找出所有连续的True值段落

  • 输入:布尔数组 [False, True, True, True, False, True, False, ...]
  • 输出:连续True段的起止索引 [(1, 4), (5, 6), ...]
  • 表示索引1-3是一个连续有效段,索引5是另一个连续有效段

最终效果

这段代码找出了数据中所有指标都完整的时间段,例如:

  • 时间段1: 2025-02-15 08:00 至 2025-02-20 15:30,共1234个数据点
  • 时间段2: 2025-03-01 10:00 至 2025-03-05 18:45,共567个数据点

这些时间段内的数据可以直接用于建模,无需插值处理。

问题2:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1201726.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

勾股定理简单学习

前言 若a和b是直角三角形的两条直角边,c是斜边,那么 a2b2c2a^{2}b^{2}c^{2}a2b2c2 勾股定理的图解法证明 勾股定理指出,在直角三角形中,斜边的平方等于两直角边的平方和,即 ( a2b2c2a^2 b^2 c^2a2b2c2)。以下是几种经…

Spring Boot 三种方式登录系统:集成微信扫码、短信验证码、邮箱验证码

Spring Boot 三种方式登录系统:集成微信扫码、短信验证码、邮箱验证码(含高并发与安全增强) 主要因为前面的帖子不太完整。 一、引言 在现代 Web 应用中,提供多种灵活、安全的登录方式已成为标配。本文档旨在提供一套生产就绪的…

Oracle 19c入门学习教程,从入门到精通,Oracle 数据表对象 —— 语法知识点详解与案例实践(10)

Oracle 数据表对象 —— 语法知识点详解与案例实践 一、环境准备:Oracle 安装与配置(简要指南) 说明:本章内容基于 Oracle Database。以下为在 Windows 或 Linux 上安装 Oracle Database 的基本步骤(以 Oracle 21c Exp…

鸿蒙 HarmonyOS 6 | 系统能力 (04):构建专业级媒体应用 PhotoAccessHelper 与复杂媒体库管理

文章目录 前言一、 架构决策与权限管理的最小化原则1. 技术选型的分水岭2. 敏感权限的申请策略 二、 高效查询机制 Predicates 与 FetchResult1. 谓词 (Predicates) 的构建2. FetchResult 数据库游标的设计 三、 深入 PhotoAsset 元数据与缩略图优化1. EXIF 元数据的读取2. 缩略…

Cadence推出人工智能语音助手Tensilica HiFi iQ DSP IP

来源:维度网 Cadence今日推出Tensilica HiFi iQ DSP IP,作为其HiFi DSP系列第六代产品,专为下一代语音人工智能及沉浸式音频应用打造全新架构。随着家庭娱乐、车载信息娱乐及智能手机市场对语音人工智能和音频处理需求的激增,HiF…

基于python的智慧农场管理系统

博主介绍:java高级开发,从事互联网行业六年,熟悉各种主流语言,精通java、python、php、爬虫、web开发,已经做了六年的毕业设计程序开发,开发过上千套毕业设计程序,没有什么华丽的语言&#xff0…

【鸿蒙原生开发会议随记 Pro】拒绝面条代码 基于 MVVM 的代码架构与状态管理选型

文章目录 一、 为什么要折腾 MVVM?从面条代码的痛点说起二、 鸿蒙状态管理的三剑客 State、Prop 与 Link三、 封装 BaseViewModel四、 构建录音页面的 MVVM 脚手架五、 总结 在前两篇文章中,我们像产品经理一样规划了“会议随记 Pro”的商业蓝图&#xf…

aiSim领衔!国内外自动驾驶仿真软件大全:热门推荐与选择指南

在自动驾驶技术飞速发展的今天,仿真测试已成为自动驾驶算法研发、验证的核心环节,能够大幅降低路测成本、突破场景复现限制,据行业数据显示,约90%的自动驾驶算法测试通过仿真平台完成。目前市面上涌现出多款功能各异的自动驾驶仿真…

芒格的“反向激励“分析在量子计算云服务定价中的应用

芒格的"反向激励"分析在量子计算云服务定价中的应用 关键词:芒格、反向激励分析、量子计算云服务、定价策略、市场竞争 摘要:本文深入探讨了芒格的“反向激励”分析方法在量子计算云服务定价中的应用。首先介绍了研究的背景、目的、预期读者和…

基于springboot的植物花卉销售管理系统

博主介绍:java高级开发,从事互联网行业六年,熟悉各种主流语言,精通java、python、php、爬虫、web开发,已经做了六年的毕业设计程序开发,开发过上千套毕业设计程序,没有什么华丽的语言&#xff0…

20252803-Linux安全类实验-ShellShock 攻击实验 - 详解

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

铟材料:稀散金属隐形明星,半导体+光伏核心刚需

在稀土、锂钴镍占据资源赛道 C 位的当下,有一种地壳丰度仅百万分之 0.1 的稀散金属,低调却不可或缺——它就是铟材料。这种被称为“金属界的维生素”“高科技隐形骨架”的战略资源,熔点低、延展性极佳,尤其氧化铟锡…

自动驾驶仿真软件推荐:康谋aiSim——ISO 26262 ASIL-D 认证的高保真选择

自动驾驶技术的快速发展离不开高效可靠的仿真测试工具。面对市面上众多仿真软件,用户常问 “自动驾驶仿真软件有哪些”“哪些自动驾驶仿真软件好用”“如何选择自动驾驶仿真软件” 等问题,选择一款功能全面、性价比高且符合自身研发需求的平台&#xff0…

关于Uvicorn:一个遵循ASGI规范的异步Web服务器

一、核心定位:Uvicorn 是一个 ASGI 服务器 首先要明确两个关键概念,才能理解 Uvicorn 的核心价值:ASGI:全称 Asynchronous Server Gateway Interface(异步服务器网关接口),是 Python 生态中用于连接「异步 Web …

9个最佳性能测试工具(2026)

1、前言 性能测试检查软件程序在预期工作负载下的速度、响应时间、可靠性、资源使用情况和可扩展性。性能测试的目的不是发现功能缺陷,而是消除软件或设备中的性能瓶颈。 性能测试为利益相关者提供有关其应用程序的速度、稳定性和可扩展性的信息。更重要的是&…

058.质数判断 +质数筛 + 质因子分解

质数判断 朴素判断\(O(\sqrt{n})\)bool isp(int n){for(int i=2;i*i<=n;++i){if(n%i==0){return 0;}}return 1; }Miller_Rabin素性测试判断高精度数\(O(k(\log n)^3)\) ,k为测试次数测试链接#include<bits/stdc…

超融合 “进化论”:当 HCI 遇上云原生技术栈,下一代基础设施雏形初现

从物理服务器堆砌的 “石器时代”&#xff0c;到虚拟化普及的 “青铜时代”&#xff0c;再到超融合&#xff08;HCI&#xff09;重构数据中心的 “铁器时代”&#xff0c;企业基础设施的每一次迭代&#xff0c;都在回应业务增长与技术变革的双重诉求。如今&#xff0c;当云原生…

从零构建云原生“试验田”:超融合的自我修养

对于多数企业而言&#xff0c;云原生转型从不是“一步到位”的豪赌&#xff0c;而是通过搭建轻量化“试验田”逐步验证、迭代的过程。这个试验田既要低成本、易部署&#xff0c;又要能模拟真实生产环境的复杂负载&#xff0c;还要为后续规模化扩展预留空间。超融合凭借“计算、…

智慧园区智能照明控制系统解决方案

1、概述园区照明比较复杂&#xff0c;办公建筑、生产车间和园区道路、景观照明等类型比较多&#xff0c;而且对照明控制方式要求不一样。所以合理使用照明控制系统&#xff0c;针对不同建筑不同场景使用不同的控制策略&#xff0c;大程度使用自然光照明达到节省照明用电&#x…

3-VueAjax

什么是Vue Vue是一款用于构建用户界面的渐进式的JavaScript框架。官方网站&#xff1a;https://cn.vuejs.org/ 前端负责将数据以美观的样式呈现出来&#xff0c;而数据最终又要在数据库服务器中存储并管理。前端想要拿到数据&#xff0c;就需要请求服务器。然后服务器将数据返…