Pandas 2.2 时间序列实战:3种频率生成与切片,处理12个月数据
📅 2026/7/9 19:26:52
👁️ 次浏览
Pandas 2.2 时间序列实战3种频率生成与切片处理12个月数据时间序列分析是金融、物联网和商业智能等领域的核心技能。作为Python生态中最强大的数据分析工具Pandas在2.2版本中对时间序列处理进行了多项优化。本文将带您深入掌握date_range的三种频率生成技巧、精确切片方法以及处理跨年度数据的实战经验。1. 时间序列生成基础在Pandas中生成时间序列主要依赖pd.date_range()函数其核心参数包括start: 起始日期字符串或datetime对象end: 结束日期periods: 生成的时间点数量freq: 频率字符串如D天、M月末等生成2021年全年的月末日期金融领域常用场景import pandas as pd # 生成12个月末日期 eom_dates pd.date_range(2021-01-01, periods12, freqM) print(eom_dates)输出结果DatetimeIndex([2021-01-31, 2021-02-28, 2021-03-31, 2021-04-30, 2021-05-31, 2021-06-30, 2021-07-31, 2021-08-31, 2021-09-30, 2021-10-31, 2021-11-30, 2021-12-31], dtypedatetime64[ns], freqM)注意M频率默认生成各月最后一天若需要月初日期应使用MS频率频率参数对照表频率字符串说明典型应用场景D日历日日级交易数据B工作日排除周末的财务分析W周默认周日周报数据汇总W-MON指定周一为周起始国际业务周统计M月末财务报表MS月初月度计划制定Q季末季度业绩报告A年末年度审计2. 三种典型频率实战2.1 月末频率M生成金融领域常用月末数据进行收益率计算import numpy as np # 生成模拟股价数据正态分布 np.random.seed(42) prices np.cumprod(1 np.random.normal(0.01, 0.05, 12)) eom_series pd.Series(prices, indexeom_dates) print(eom_series.head(3))输出示例2021-01-31 1.052542 2021-02-28 1.126678 2021-03-31 1.074932 Freq: M, dtype: float642.2 周频率W生成处理每周销售数据时建议明确指定周起始日# 生成2021年Q1的周数据周一作为起始 weekly_dates pd.date_range(2021-01-01, 2021-03-31, freqW-MON) print(f生成周数: {len(weekly_dates)})输出生成周数: 132.3 日频率D生成处理高频交易数据时需注意节假日# 生成2021年1月工作日数据 bday_dates pd.date_range(2021-01-01, 2021-01-31, freqB) print(f1月工作日天数: {len(bday_dates)})输出1月工作日天数: 213. 高级切片技巧3.1 精确时间范围切片# 创建包含随机值的日级时间序列 daily_data pd.Series( np.random.rand(365), indexpd.date_range(2021-01-01, periods365, freqD) ) # 切片获取Q2数据 q2_data daily_data[2021-04-01:2021-06-30] print(fQ2数据量: {len(q2_data)}条)3.2 部分字符串索引# 获取所有周末数据 weekends daily_data[daily_data.index.weekday 5] print(f周末数据占比: {len(weekends)/len(daily_data):.1%})3.3 基于时间的条件过滤# 获取工作时间数据9:00-17:00 times pd.date_range(2021-01-01 08:00, periods24*60, freqT) minute_data pd.Series(range(len(times)), indextimes) work_hours minute_data.between_time(09:00, 17:00)4. 金融数据处理实战4.1 收益率计算# 计算月收益率 returns eom_series.pct_change().dropna() print(月收益率描述:\n, returns.describe())4.2 滚动窗口计算# 3个月滚动波动率 volatility returns.rolling(3).std() print(滚动波动率:\n, volatility.tail())4.3 重采样处理# 将日数据降采样为周数据 weekly_mean daily_data.resample(W-MON).mean() print(周均值数据:\n, weekly_mean.head(3))5. 常见问题解决方案时区处理# 添加时区信息并转换 tz_aware pd.date_range(2021-01-01, periods3, freqD, tzAsia/Shanghai) print(上海时间:\n, tz_aware.tz_convert(UTC))处理闰年# 生成闰年日期序列 leap_year pd.date_range(2020-02-28, periods4, freqD) print(闰年测试:\n, leap_year)频率别名冲突提示Pandas 2.2中M始终表示月末避免与分钟(min)混淆实际项目中处理电商促销数据时发现使用freq7D生成的周数据比freqW更灵活可以自定义起始日。而金融风控场景中freqBMS每月第一个工作日生成的索引能有效避开节假日对报表的影响。
揭秘HeteroFusedKernels:异构硬件加速库如何突破大模型训练效率瓶颈? 【免费下载链接】HeteroFusedKernels A heterogeneous hardware acceleration library focused on efficient KV cache transfer operators (H2D/D2H), designed for large model tra…
📅 2026/7/9 19:25:52
lxcfs-tools源码分析:从namespace到FUSE的挂载实现原理 【免费下载链接】lxcfs-tools A toolkit for lxcfs to remount FUSE filesystem to syscontainer. 项目地址: https://gitcode.com/openeuler/lxcfs-tools
前往项目官网免费下载:https://ar…
📅 2026/7/9 19:25:52
鲲鹏安全库kunpengsecl API使用手册:28个REST接口详细解析 【免费下载链接】kunpengsecl This project develops security software components running on Kunpeng processors, specifically focusing on trusted computing related software components such as r…
📅 2026/7/9 19:25:52
上周和一个做制造业的朋友喝茶,他跟我倒了半小时苦水。公司从30人干到200人,原来的进销存软件彻底撑不住了——采购、生产、仓库、财务各跑各的系统,数据靠Excel导来导去,月末对账像破案。更麻烦的是,想换个新ERP&…
📅 2026/7/10 3:37:42
Multisim 14.1 Basys3 秒表进阶:三状态机与数据存储系统工程化设计指南1. 数字系统设计方法论在数字电路设计中,将分立模块组合成完整功能系统需要遵循模块化设计原则。本方案采用自顶向下的设计方法,将秒表系统分解为三个核心子系统&#x…
📅 2026/7/10 3:37:42
🚀 30款热门AI模型一站整合,DeepSeek/GLM/Qwen 随心用,限时 5 折。 👉 点击领海量免费额度 1. 先搞清楚“零基础自动化运维”到底要解决什么问题 如果你刚开始接触运维,或者还在手动登录服务器敲命令,那…
📅 2026/7/10 3:37:42
很多初学者都会觉得反直觉:我们明明是从键盘输入(Input)数据到程序里,为什么叫 提取(Extraction)?我们明明是把数据输出(Output)到屏幕上,为什么叫 插入&…
📅 2026/7/10 3:37:42
一.用户管理①.用户账号和组账号概述用户的分类Linux 中的用户分为三种角色:超级用户、普通用户和程序用户,每个角色有不同的权限和用途。理解这些角色及其对应的权限设置是系统管理的基础。(1)超级用户定义:Root 是 L…
📅 2026/7/10 3:37:42
近日,由千方科技(002373.SZ)全资子公司千方捷通与吉林省科维交通工程有限公司组成的联合体,成功中标吉林省公路交通基础设施数字化转型升级项目。举是财政部、交通运输部自2024年启动的公路水路交通基础设施数字化转型升级示范工程的重要组成…
📅 2026/7/10 3:36:42
一、为什么接口自动化测试,适合用AI赋能?
大家可自行先思考一个问题:
AI赋能测试全流程,为什么优先推荐从接口自动化切入?
有三个典型原因:
接口输入结构化,AI最擅长"吃"
接口有OpenA…
📅 2026/7/10 0:00:53
终极原神FPS解锁器完整指南:轻松突破60帧限制 【免费下载链接】genshin-fps-unlock unlocks the 60 fps cap 项目地址: https://gitcode.com/gh_mirrors/ge/genshin-fps-unlock
原神FPS解锁器是一款专为《原神》玩家设计的开源工具,通过先进的Wri…
📅 2026/7/10 0:00:53
YesPlayMusic:如何用高颜值播放器重塑你的网易云音乐体验?🎵 【免费下载链接】YesPlayMusic 高颜值的第三方网易云播放器,支持 Windows / macOS / Linux :electron: 项目地址: https://gitcode.com/gh_mirrors/ye/YesPlayMusic…
📅 2026/7/10 0:00:53
1. 项目背景与核心需求 在嵌入式系统开发中,快速精确的数据检索是一个常见但极具挑战性的需求。特别是在工业控制、医疗设备和物联网终端等场景下,系统往往需要在毫秒级时间内完成关键参数的读取和写入操作。传统基于Flash存储的方案存在擦写次数有限、操…
📅 2026/7/9 15:10:35
1. 工业电流环信号传输的基础认知在工业自动化领域,4-20mA电流环传输技术已经持续服役超过半个世纪。这种看似简单的信号传输方式之所以能经久不衰,核心在于其独特的抗干扰能力——电流信号在长距离传输时几乎不受线路电阻和电压波动的影响。我曾在化工厂…
📅 2026/7/9 14:14:01
最近在项目里尝试用 YOLO 做目标检测,从环境搭建到模型训练,再到推理部署,整个过程踩了不少坑。网上的资料虽然多,但要么版本老旧,要么步骤零散不成体系,对于刚入门的新手来说,很容易卡在某个环…
📅 2026/7/9 15:10:36
目录
第一步:选对模板,省心一半
第二步:打开扫码点餐功能
开启功能按钮
桌台管理与桌码生成
第三步:个性化设计,打造品牌感
调整点餐页面
设置点餐规则 你还在让顾客站着排队点餐吗?2025年ÿ…
📅 2026/7/9 15:10:36
在业务中快速构建一个能理解私有文档、准确回答专业问题的智能助手,是很多开发团队面临的共同挑战。传统方案往往需要从零开始搭建复杂的 RAG(检索增强生成)系统,涉及文档解析、向量化、检索、大模型调用等多个环节,整…
📅 2026/7/9 15:10:36
FAE放射组学分析工具:医学影像特征探索的完整解决方案 【免费下载链接】FAE FeAture Explorer 项目地址: https://gitcode.com/gh_mirrors/fae/FAE
你是否曾经面对海量医学影像数据感到无从下手?想要从CT、MRI等影像中提取有价值的定量特征&#…
📅 2026/7/9 15:10:36