一文速学-Pandas处理时间序列数据操作详解
目录
前言
一、获取时间
二、时间索引
三、时间推移
参阅
前言
一般从数据库或者是从日志文件读出的数据均带有时间序列,做时序数据处理或者实时分析都需要对其时间序列进行归类归档。而Pandas是处理这些数据很好用的工具包。此篇博客基于Jupyter之上进行演示,本篇博客的愿景是希望我或者读者通过阅读这篇博客能够学会方法并能实际运用。希望读者看完能够提出问题或者看法,博主会长期维护博客做及时更新。纯分享,希望大家喜欢。
一、获取时间
python自带datetime库,通过调用此库可以获取本地时间
from datetime import datetime
datetime.now()
同时也可以独立获取年月日:
datetime.now().day
datetime.now().year
datetime.now().moth
isoweekday()获取符合ISO标准的指定日期所在的星期数:
datetime.now().isoweekday()
为星期二。
但也有weekeday()方法但是是从0开始,也就是说0也就是周一,需要加一转为周数:
datetime.now().weekday()+1
datetime可以将日期(date)和时间(time)分隔开:
datetime.now().date()
datetime.now().time()
也可以用timetuple()函数将整个时间拆分为结构体:
datetime.now().timetuple()
要转换为自定义熟悉的时间表达可以使用strftime()函数,其输出代码格式有以下几种:
输出代码 | 说明 |
%H | 24小时制[00-23] |
%I | 12小时制[01-12] |
%M | 60分钟[00-59] |
%S | 61秒钟[00,61](60和61用于闰秒) |
%w | 星期一到星期日,但从0开始[0-6] |
%U | 每年的第几周,周日指定为每周第一天 |
%W | 每年的第几周,周一指定为每周第一天 |
%F | %Y-%m-%d的简写形式,例如2022-05-17 |
%D | %m%d%y的简写形式,例如05/17/2022 |
datetime.now().strftime('%Y-%m-%d')
datetime.now().strftime('%m/%d/%Y %H:%M:%S')
二、时间索引
时间索引是根据数据的时间来处理时序数据进行归档筛选的一种索引方式。
展示数据:
首先查看类型是否为 datetime类型,是该类型再重新设定索引,否则需要先把索引时间列转换为datetime类型再进行设定。
df1.set_index('first_order_time')
若要查找2019年的数据,只需要在 后面加上日期即可:
df1['2019']
想要获取详细的日期的数据只需要在[]里面输入对应的日期即可:
df1['2019-05-13']
获取区间日期数据:
df1['2019-05-01':'2019-05-13']
三、时间推移
如果时序数据提取出来时间并不符合对应时间戳,则可以使用timedelta进行推移时间:
timedelta类表示为时间差,可直接实例化也可以由两个datetime进行相减操作得到。
可表示的时间差依次为:
days,seconds,microseconds,minutes,hours,weeks
如我们要推移一天时间:
date = datetime(2019,5,10)
date+timedelta(days = 1)
往后推移只需要减去对应天数就好了。
比起timedelta,有date offset可以直接进行时间推移,并不需要换算,效率比timedelta要快很多。
引入库:
from pandas.tseries.offsets import Day,Hour,Minute
date+Day(1)
计算结果为timestamp:
参阅
Python datetime模块详解
一文速学-Pandas处理时间序列数据操作详解相关推荐
- Pandas之datetime数据基础详解。
Pandas之datetime数据基础详解! 一.日期和时间数据类型 1.利用datetime模块构建时间和日期数据 2.日期和时间的结合体(datetime类型数据) 3.datetime与字符串 ...
- Hive最新数据操作详解(超级详细)
数据操作能力是大数据分析至关重要的能力.数据操作主要包括:更改(exchange),移动(moving),排序(sorting),转换(transforming).Hive提供了诸多查询语句,关键 ...
- python重要库的导入和使用_python重要第三方库pandas加载数据(详解)
Pandas数据加载 关注公众号"轻松学编程"了解更多. pandas提供了一些用于将表格型数据读取为DataFrame对象的函数,其中read_csv和read_table这两个 ...
- 一文速学数模-时序预测模型(四)二次指数平滑法和三次指数平滑法详解+Python代码实现
目录 前言 二次指数平滑法(Holt's linear trend method) 1.定义 2.公式 二次指数平滑值: 二次指数平滑数学模型: 3.案例实现 三次指数平滑法(Holt-Winters ...
- Pyecharts一文速学-绘制桑基图详解+Python代码
目录 前言 一.桑基图 二.Pyecharts绘制 1.数据处理 2.桑基图参数 1.class Sankey() 2.class SankeyLevelsOpts() 三.add()方法参数 1.s ...
- Pandas处理时间序列数据的20个关键知识点
时间序列数据有许多定义,它们以不同的方式表示相同的含义.一个简单的定义是时间序列数据包括附加到顺序时间点的数据点. 时间序列数据的来源是周期性的测量或观测.许多行业都存在时间序列数据.举几个例 ...
- 数据科学 IPython 笔记本 7.6 Pandas 中的数据操作
7.6 Pandas 中的数据操作 原文:Operating on Data in Pandas 译者:飞龙 协议:CC BY-NC-SA 4.0 本节是<Python 数据科学手册>(P ...
- halcon例程讲解_跟我学机器视觉-HALCON学习例程中文详解-开关引脚测量
跟我学机器视觉-HALCON学习例程中文详解-开关引脚测量 This example program demonstrates the basic usage of a measure object. ...
- python dataframe loc函数_python pandas.DataFrame.loc函数使用详解
官方函数 DataFrame.loc Access a group of rows and columns by label(s) or a boolean array. .loc[] is prim ...
最新文章
- 更新elementui图标不显示_超简单elementui主题及变量修改方案
- 使用Volley传输网络数据
- SSM-SpringMVC-07:SpringMVC中处理器映射器
- https://zeplin.io/ 设计图标注及切图
- WordPress页面、文章、分类等的条件判断的标签集合
- 视觉SLAM笔记(47) 优化 PnP 的结果
- 2017.6.4 problem b 失败总结
- ubuntu重置root密码
- Oracle递归查询,Oracle START WITH……CONNECT BY查询
- 北理工计算机专业汇编教材,李元章_北京理工大学计算机学院
- 用JS让文章内容指定的关键字加亮
- 百度浏览器启动公司级内测 截图首度曝光
- 修改最新版谷歌浏览器编码方式
- Parcel 中文文档 | Parcel 中文网
- math_数集(数集符号)/算数运算中英文对照
- SIMOUS-卡布奇诺的由来
- 用c语言编写s7-1200 plc程序教程,S7-1200编程指南.pdf
- Jetson Nano 系列之:刷机、瘦身、部署应用
- 8个Spring事务失效的场景,你碰到过几种?
- 三年内赶超特斯拉?这家车企的底气是什么?
热门文章
- 计算机技术非全日制调剂2020,2020年硕士研究生部分非全日制专业接收调剂的公告...
- 民生银行京东三位大咖,手把手教你构建用户画像
- HP LaserJet Pro 300 彩色打印机 M351a - 每次重启电脑都提示安装驱动
- Vue2.x - Vue Router
- Ghost 搭建博客小记
- 论文写作 9: 引言需要讲述完整的故事
- python print时清除上一行_python3,如何用print清除行覆盖?
- 光纤软件测试,20m光纤速度怎么测试 20m光纤速度测试方法【详解】
- 用C51单片机的外部中断设计1s定时器
- matlab读Excel表格数据画图,matlab读Excel表格数据画图-如何利用matlab根据excel表格里面的数据画图...