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的汉字转GBK码实现代码
Feb 19 Python
Python实现的多线程http压力测试代码
Feb 08 Python
python中利用zfill方法自动给数字前面补0
Apr 10 Python
Python中py文件引用另一个py文件变量的方法
Apr 29 Python
python读取word文档,插入mysql数据库的示例代码
Nov 07 Python
python循环定时中断执行某一段程序的实例
Jun 29 Python
python编写计算器功能
Oct 25 Python
Python解析多帧dicom数据详解
Jan 13 Python
Python3 pyecharts生成Html文件柱状图及折线图代码实例
Sep 29 Python
Python实现简单的猜单词小游戏
Oct 28 Python
基于Django快速集成Echarts代码示例
Dec 01 Python
详解如何用Python实现感知器算法
Jun 18 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-7.3.6 编译安装过程
2020/02/11 PHP
User Scripts: Video Download by User Scripts
2007/05/14 Javascript
jquery1.5.1中根据元素ID获取元素对象的代码
2011/04/02 Javascript
javascript学习笔记(二)数组和对象部分
2014/09/30 Javascript
jQuery中;function($,undefined) 前面的分号的用处
2014/12/17 Javascript
CSS图片响应式 垂直水平居中
2015/08/14 Javascript
基于JavaScript实现微信抢红包功能
2017/07/20 Javascript
bootstrap 路径导航 分页 进度条的实例代码
2018/08/06 Javascript
vue实现移动端悬浮窗效果
2018/12/01 Javascript
ng-zorro-antd 入门初体验
2018/12/03 Javascript
让你30分钟快速掌握vue3教程
2020/10/26 Javascript
解决antd 表单设置默认值initialValue后验证失效的问题
2020/11/02 Javascript
Python 网络编程起步(Socket发送消息)
2008/09/06 Python
Python中使用scapy模拟数据包实现arp攻击、dns放大攻击例子
2014/10/23 Python
Python使用filetype精确判断文件类型
2017/07/02 Python
python定向爬取淘宝商品价格
2018/02/27 Python
Python实现的求解最大公约数算法示例
2018/05/03 Python
Python递归函数实例讲解
2019/02/27 Python
python 猴子补丁(monkey patch)
2019/06/26 Python
Python绘制三角函数图(sin\cos\tan)并标注特定范围的例子
2019/12/04 Python
python 实现将list转成字符串,中间用空格隔开
2019/12/25 Python
Django中modelform组件实例用法总结
2020/02/10 Python
python查找特定名称文件并按序号、文件名分行打印输出的方法
2020/04/24 Python
基于python连接oracle导并出数据文件
2020/04/28 Python
Python之字典对象的几种创建方法
2020/09/30 Python
Python+MySQL随机试卷及答案生成程序的示例代码
2021/02/01 Python
英国领先的隐形眼镜在线供应商:Lenstore.co.uk
2019/11/24 全球购物
介绍java中初始化块的使用
2012/09/11 面试题
一套比较完整的软件测试人员面试题
2012/05/13 面试题
会计自荐信范文
2014/03/09 职场文书
保险公司晨会主持词
2014/03/22 职场文书
个人融资协议书范本两则
2014/10/15 职场文书
初中优秀学生评语
2014/12/29 职场文书
中标通知书
2015/04/17 职场文书
公司年会晚会开幕词
2019/04/02 职场文书
python实战之一步一步教你绘制小猪佩奇
2021/04/22 Python