python pandas时序处理相关功能详解


Posted in Python onJuly 03, 2019

创建时间序列

函数pd.date_range()

根据指定的范围,生成时间序列DatetimeIndex,每隔元素的类型为Timestamp。该函数应用较多。

ts = pd.date_range('2017-09-01', periods=10, freq='d', normalize=False)
ts

输出为:

DatetimeIndex(['2017-09-01', '2017-09-02', '2017-09-03', '2017-09-04',
'2017-09-05', '2017-09-06', '2017-09-07', '2017-09-08',
'2017-09-09', '2017-09-10'],
dtype='datetime64[ns]', freq='D'

主要的入参解析:

  • start: 开始时刻,可以是字符串或者datetime类型的值。默认None。
  • end: 结束时刻,可以是字符串或者datetime类型的值,如果指定了长度,即periods,则可不设置。默认None。
  • periods: 时序的长度,整型类型。如果有end,可不设置。默认None。
  • freq: 时序生成的频率,即每隔多少时刻生成一个时序点。字符串类型或者DateOffset类型。默认'D',即天粒度,见上述代码输出。
  • tz: 时区,字符串类型。默认None。
  • normalize: bool类型,没用过,不知道干啥的。
  • name: 设置时序的名称,字符串类型,默认None。
  • closed: 是否包含两边的值。默认None,即两边都保留。

其中,freq的取值可以为如下的符号表示间隔,可以结合符号和数字,如'3d',表示每隔三天记录一个时间点。大小写都可以。

B business day frequency
C custom business day frequency (experimental)
D calendar day frequency
W weekly frequency
M month end frequency
SM semi-month end frequency (15th and end of month)
BM business month end frequency
CBM custom business month end frequency
MS month start frequency
SMS semi-month start frequency (1st and 15th)
BMS business month start frequency
CBMS custom business month start frequency
Q quarter end frequency
BQ business quarter endfrequency
QS quarter start frequency
BQS business quarter start frequency
A year end frequency
BA business year end frequency
AS year start frequency
BAS business year start frequency
BH business hour frequency
H hourly frequency
T, min minutely frequency
S secondly frequency
L, ms milliseconds
U, us microseconds
N nanoseconds

字符串转换为时间戳

pd.to_datetime() 函数可以将表示时间的字符串转换位TimeStamp。

pd.to_datetime('2017-09-01')

输出为:

Timestamp('2017-09-01 00:00:00')

常用的参数:

format: 用来设置字符串的格式,默认如上所示。

时间戳的加减
有时候需要将时间进行增减,可以使用类型:DateOffset。

pd.to_datetime('2017-09-01') + pd.DateOffset(days=10)

输出为:

Timestamp('2017-09-11 00:00:00')

DateOffset常用的参数:

  • months,设置月。
  • days,设置天。
  • years,设置年。
  • hours,设置小时。
  • minutes,设置分钟。
  • seconds,设置秒。

以上可以同时设置,组合使用。

pd.to_datetime('2017-09-01') + pd.DateOffset(seconds=10, days = 10)

输出为:

Timestamp('2017-09-11 00:00:10')

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python中利用await关键字如何等待Future对象完成详解
Sep 07 Python
Python连接phoenix的方法示例
Sep 29 Python
Python实现比较扑克牌大小程序代码示例
Dec 06 Python
浅谈python str.format与制表符\t关于中文对齐的细节问题
Jan 14 Python
python实现多张图片拼接成大图
Jan 15 Python
SELENIUM自动化模拟键盘快捷键操作实现解析
Oct 28 Python
PYQT5 vscode联合操作qtdesigner的方法
Mar 24 Python
python 写函数在一定条件下需要调用自身时的写法说明
Jun 01 Python
Python matplotlib读取excel数据并用for循环画多个子图subplot操作
Jul 14 Python
python中用Scrapy实现定时爬虫的实例讲解
Jan 18 Python
python munch库的使用解析
May 25 Python
Python 居然可以在 Excel 中画画你知道吗
Feb 15 Python
在linux下实现 python 监控usb设备信号
Jul 03 #Python
django-allauth入门学习和使用详解
Jul 03 #Python
python使用mitmproxy抓取浏览器请求的方法
Jul 02 #Python
Python使用线程来接收串口数据的示例
Jul 02 #Python
使用Python在Windows下获取USB PID&VID的方法
Jul 02 #Python
在windows下使用python进行串口通讯的方法
Jul 02 #Python
浅析Python 中几种字符串格式化方法及其比较
Jul 02 #Python
You might like
两个强悍的php 图像处理类1
2009/06/15 PHP
php urlencode()与urldecode()函数字符编码原理详解
2011/12/06 PHP
浅析ThinkPHP的模板输出功能
2014/07/01 PHP
PHP安装threads多线程扩展基础教程
2015/11/17 PHP
PHP中PDO连接数据库中各种DNS设置方法小结
2016/05/13 PHP
OAuth认证协议中的HMACSHA1加密算法(实例)
2017/10/25 PHP
PHP实现数组根据某个单元字段排序操作示例
2018/08/01 PHP
ThinkPHP5.0框架结合Swoole开发实现WebSocket在线聊天案例详解
2019/04/02 PHP
Flash对联广告的关闭按钮讨论
2007/01/30 Javascript
cloudgamer出品ImageZoom 图片放大效果
2010/04/01 Javascript
jquery实现的一个导航滚动效果具体代码
2013/05/27 Javascript
js使用正则实现ReplaceAll全部替换的方法
2014/08/22 Javascript
使用js画图之正弦曲线
2015/01/12 Javascript
jquery+css实现绚丽的横向二级下拉菜单-附源码下载
2015/08/23 Javascript
JavaScript实现简单的拖动效果
2016/07/02 Javascript
js实现的页面加载完毕之前loading提示效果完整示例【附demo源码下载】
2016/08/02 Javascript
原生JS:Date对象全面解析
2016/09/06 Javascript
canvas知识总结
2017/01/25 Javascript
jQuery中绑定事件bind() on() live() one()的异同
2017/02/23 Javascript
javascript实现数字配对游戏的实例讲解
2017/12/14 Javascript
vue中如何让子组件修改父组件数据
2018/06/14 Javascript
基于Layui自定义模块的使用方法详解
2019/09/14 Javascript
Angular value与ngValue区别详解
2019/11/27 Javascript
如何手动实现一个 JavaScript 模块执行器
2020/10/16 Javascript
js用正则表达式筛选年月日的实例方法
2021/01/04 Javascript
Python3.2中Print函数用法实例详解
2015/05/19 Python
详谈Pandas中iloc和loc以及ix的区别
2018/06/08 Python
关于python列表增加元素的三种操作方法
2018/08/22 Python
浅谈keras中的keras.utils.to_categorical用法
2020/07/02 Python
美国折扣地毯销售网站:Rugs.com
2020/03/27 全球购物
水利水电建筑施工应届生求职信
2014/07/04 职场文书
同学聚会通知书
2015/04/20 职场文书
2015年办税服务厅工作总结
2015/07/23 职场文书
2015年高中生国庆节演讲稿
2015/07/30 职场文书
pandas时间序列之pd.to_datetime()的实现
2022/06/16 Python
volatile保证可见性及重排序方法
2022/08/05 Java/Android