讲师中心 微信公众号
AI工具推荐 视频效率加速

Pandas 中实现非规则时间序列的线性插值重采样(对齐整点)

雨宇姑娘_5170

雨宇姑娘_5170

发布时间:2025-12-26 20:24:59

|

895人浏览过

|

来源于php中文网

原创

Pandas 中实现非规则时间序列的线性插值重采样(对齐整点)

本文介绍如何使用 pandas 对带有不规则时间戳的小时级气象数据进行重采样,通过先升频插值再降频对齐,精准生成每小时整点(如 15:00、16:00)的线性插值温度值。

在实际时间序列分析中,传感器数据常以近似但不精确的时间间隔采集(例如每小时 51 分记录),而下游任务(如可视化、建模或与标准气象产品对齐)往往要求严格对齐到整点(如 15:00, 16:00)。直接使用 df.resample('H').first().interpolate('linear') 并不能达到预期效果——因为 .first() 会丢失原始时间信息,导致插值失去时序依据;而 .interpolate() 在降频后应用,已无足够密度支撑准确线性拟合。

正确策略是 “升频→插值→降频”三步法:

  1. 升频(Upsample):将原始数据重采样至高频率(如分钟级 'T' 或 '1min'),用 .first() 获取每个分钟桶内的首个观测值(此时多数分钟为空,产生大量 NaN);
  2. 插值(Interpolate):在密集的时间索引上执行 interpolate(method='linear'),利用原始时间戳的精确位置进行等距线性插值;
  3. 降频(Downsample):再以小时为单位重采样('H'),并用 .asfreq() 直接提取整点时刻的值(而非聚合),确保结果严格落在 HH:00:00。

以下是完整可运行示例:

响应式金融公司HTML5网站模板
响应式金融公司HTML5网站模板

响应式金融公司HTML5网站模板是一款适合提供家族财富管理、节税互助基金、保险投资、节税投资、财务策划和在线投资计划等服务的金融公司宣传网站模板下载。提示:本模板调用到谷歌字体库,可能会出现页面打开比较缓慢。

下载
import pandas as pd

# 构造示例数据(注意:时间列需转为 datetime 并设为索引)
data = {
    'Date Time, GMT-08:00': ['10/31/23 15:51', '10/31/23 16:51', 
                             '10/31/23 17:51', '10/31/23 18:51',
                             '10/31/23 19:51', '10/31/23 20:51', 
                             '10/31/23 21:51'],
    'Temp, °C': [13.41, 7.49, 7.61, 7.39, 7.34, 7.33, 7.38]
}
df = pd.DataFrame(data)

# 关键预处理:解析时间、设为索引
df['Date Time, GMT-08:00'] = pd.to_datetime(
    df['Date Time, GMT-08:00'], 
    format='%m/%d/%y %H:%M'
)
df = df.set_index('Date Time, GMT-08:00')

# ✅ 正确流程:升频 → 插值 → 降频 → 取频点
result = (df
          .resample('T').first()           # 升频至分钟级,保留原始观测点
          .interpolate(method='linear')    # 在连续分钟索引上线性插值
          .resample('H').asfreq())         # 降频至小时级,取每小时首分钟(即 HH:00:00)

print(result)

输出结果:

                      Temp, °C
Date Time, GMT-08:00          
2023-10-31 15:00:00        NaN
2023-10-31 16:00:00    12.5220
2023-10-31 17:00:00     7.5080
2023-10-31 18:00:00     7.5770
2023-10-31 19:00:00     7.3825
2023-10-31 20:00:00     7.3385
2023-10-31 21:00:00     7.3375
⚠️ 注意事项:首行 15:00 为 NaN,因原始最早数据在 15:51,无法向前提取整点值(可结合 limit_direction='forward' 或 fill_value 处理边界);若原始时间跨度大、精度要求高,可改用 'S'(秒级)升频提升插值平滑度;.asfreq() 保证输出严格对齐整点;若需聚合(如取均值),应改用 .mean(),但会损失插值意义;所有操作均基于索引的时间语义,务必确保 datetime 索引已正确设置且无时区歧义(必要时用 .dt.tz_localize() / .dt.tz_convert() 统一时区)。

该方法兼顾物理合理性与工程实用性,是处理非均匀采样气象、IoT 或金融时间序列的标准实践。

热门AI工具

更多
WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

超级简历WonderCV

一款AI办公效率工具,主要用于免费求职简历模版下载制作,应届生职场人必备简历制作神器,适合需要提升相关任务效率的用户。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

切问学术

切问学术是一款AI论文写作工具,复旦大学NLP团队推出的AI学术智能体。

LibLibAI
LibLibAI Hot

一款AI视频创作工具,主要用于国内领先的AI创意平台,以海量模型、低门槛操作与“创作-分享-商业化”生态,让小白与专业创作者都能高效实现图文乃至视频创意表达,适合需要提升相关任务效率的用户。

Laper
Laper Hot

Laper是专为编剧、导演和制片人推出的 AI 原生剧本创作工具。

Lovart
Lovart Hot

一款面向视觉设计创作的AI设计平台,可通过智能体和画布工作流辅助制作海报、Logo、网页、PPT及其他视觉内容。

墨刀AI
墨刀AI Hot

一款AI图像与设计工具,主要用于产品经理的专属智能体,适合需要提升相关任务效率的用户。

相关专题

更多
Python 时间序列分析与预测
Python 时间序列分析与预测

本专题专注讲解 Python 在时间序列数据处理与预测建模中的实战技巧,涵盖时间索引处理、周期性与趋势分解、平稳性检测、ARIMA/SARIMA 模型构建、预测误差评估,以及基于实际业务场景的时间序列项目实操,帮助学习者掌握从数据预处理到模型预测的完整时序分析能力。

300

2025.12.04

Python 数据清洗与预处理实战
Python 数据清洗与预处理实战

本专题系统讲解 Python 在数据清洗与预处理中的核心技术,包括使用 Pandas 进行缺失值处理、异常值检测、数据格式化、特征工程与数据转换,结合 NumPy 高效处理大规模数据。通过实战案例,帮助学习者掌握 如何处理混乱、不完整数据,为后续数据分析与机器学习模型训练打下坚实基础。

212

2026.01.31

Python数据分析与Pandas高级实战
Python数据分析与Pandas高级实战

本专题围绕 Python 数据分析展开,系统讲解 Pandas 的高级用法,包括数据清洗、透视表、时间序列分析以及多表合并与分组操作。通过实战案例,帮助开发者掌握高效处理与分析数据的方法,提高数据处理效率与分析能力。

331

2026.04.13

传感器故障解决方法
传感器故障解决方法

传感器故障排除指南:识别故障症状(如误读或错误代码)。检查电源和连接(确保连接牢固,无损坏)。校准传感器(遵循制造商说明)。诊断内部故障(目视检查、信号测试、环境影响评估)。更换传感器(选择相同规格,遵循安装说明)。验证修复(检查信号准确性,监测异常行为)。

3404

2024.06.04

Buffalo框架数据库开发全教程
Buffalo框架数据库开发全教程

本专题围绕Buffalo框架数据库开发,讲解database.yml多环境配置、soda与fizz迁移生成回滚、模型结构体标签、增删改查与条件查询、一对多与多对多关联、数据校验、回调钩子、事务处理及原生SQL执行能力。

120

2026.09.23

Buffalo框架路由与请求处理实操指南
Buffalo框架路由与请求处理实操指南

本专题讲解Buffalo框架路由与请求处理机制,涵盖路由注册与分组、资源路由、Handler编写规范、Context上下文方法、参数绑定、中间件编写挂载、Session与Cookie读写、Flash消息及错误页面定制方法。

40

2026.09.23

Buffalo框架零基础入门教程
Buffalo框架零基础入门教程

本专题整理Buffalo框架入门内容,涵盖Go环境准备、buffalo CLI安装、新项目生成、目录结构说明、dev热加载启动、数据库连接配置与常见报错排查,帮助新手按约定优于配置的思路跑通第一个Buffalo框架应用。

40

2026.09.23

Conan创建软件包配方指南
Conan创建软件包配方指南

本专题介绍通过conanfile.py创建软件包的方法,讲解包名、版本、依赖和构建设置等基础信息,以及source、build、package、package_info等常用方法的作用及编写思路。

20

2026.09.22

Conan二进制包配置指南
Conan二进制包配置指南

本专题介绍Conan根据操作系统、编译器、架构和构建类型生成二进制包的方法,讲解Profile、Settings、Options及Package ID的作用,帮助管理不同平台和编译环境下的包版本。

40

2026.09.22

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
热门推荐
/
最新课程
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn