pandas时间序列之pd.to_datetime()的实现


Posted in Python onJune 16, 2022

解析来自各种来源和格式的时间序列信息

pd.to_datetime(
    arg,#int, float, str, datetime, list, tuple, 1-d array, Series DataFrame/dict-like
    errors='raise',# {'ignore', 'raise', 'coerce'}, default 'raise'
    dayfirst=False,
    yearfirst=False,
    utc=None,
    format=None,#格式,比如 "%d/%m/%Y"
    exact=True,
    unit=None,#单位str, default 'ns',可以是(D,s,ms,us,ns)
    infer_datetime_format=False,
    origin='unix',#指定从什么时间开始,默认为19700101
    cache=True,
)

时间序列解析之小试牛刀

pd.to_datetime()

import datetime
import pandas as pd
import numpy as np
dti = pd.to_datetime(['1/1/2018', np.datetime64('2018-01-01'),
                      datetime.datetime(2018, 1, 1)])
dti

DatetimeIndex([‘2018-01-01’, ‘2018-01-01’, ‘2018-01-01’], dtype=‘datetime64[ns]’, freq=None)

pd.to_datetime(['2020-04-20', '20/04/2020','Apr 20 2020'])

DatetimeIndex([‘2020-04-20’, ‘2020-04-20’, ‘2020-04-20’], dtype=‘datetime64[ns]’, freq=None)

import time
time.asctime()

‘Tue Apr 7 21:50:17 2020’

pd.to_datetime(time.asctime())

Timestamp(‘2020-04-07 21:50:17’)

还有更加偷懒的办法,假如整理数据时遇到了大量的时间需要输入,比如2020-11-11 00:00:00,输入-和:太浪费时间了,而且时间之间没有什么变化规律可循,这种情况下可以直接输入20201111000000进行记录,之后再借助pd.to_datetime()解析,省时省力一步到位。

pd.to_datetime('20201111000000')

Timestamp(‘2020-11-11 00:00:00’)

时间序列解析之磨刀霍霍

1. 指定识别的format

pd.to_datetime('2020/12/12', format='%Y/%m/%d')

Timestamp(‘2020-12-12 00:00:00’)

pd.to_datetime('12-11-2010 00:00', format='%d-%m-%Y %H:%M')

Timestamp(‘2010-11-12 00:00:00’)

2. 遇到DataFrame

df = pd.DataFrame({'year': [2015, 2016],
   ....:                    'month': [2, 3],
   ....:                    'day': [4, 5],
   ....:                    'hour': [2, 3]})
df

year month day hour
0 2015 2 4 2
1 2016 3 5 3

pd.to_datetime(df)

0 2015-02-04 02:00:00
1 2016-03-05 03:00:00
dtype: datetime64[ns]

pd.to_datetime(df[['year','month','day']])

0 2015-02-04
1 2016-03-05
dtype: datetime64[ns]

3. 遇到不能识别的处理方法

pd.to_datetime(['2009/07/31', 'asd'], errors='ignore')

Index([‘2009/07/31’, ‘asd’], dtype=‘object’)

pd.to_datetime(['2009/07/31', 'asd'], errors='raise')

ParserError: Unknown string format: asd

pd.to_datetime(['2009/07/31', 'asd'], errors='coerce')

DatetimeIndex([‘2009-07-31’, ‘NaT’], dtype=‘datetime64[ns]’, freq=None)

4. origin的用法

指定时间

pd.to_datetime([1, 2, 3], unit='D', origin=pd.Timestamp('1960-01-01'))

DatetimeIndex([‘1960-01-02', ‘1960-01-03', ‘1960-01-04'], dtype=‘datetime64[ns]', freq=None)

不指定时间则默认从19700101开始

pd.to_datetime([1, 2, 3], unit='D')

DatetimeIndex([‘1970-01-02', ‘1970-01-03', ‘1970-01-04'], dtype=‘datetime64[ns]', freq=None)

到此这篇关于pandas时间序列之pd.to_datetime()的实现的文章就介绍到这了,更多相关pandas pd.to_datetime()内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!


Tags in this post...

Python 相关文章推荐
使用Python编写提取日志中的中文的脚本的方法
Apr 30 Python
Python中Iterator迭代器的使用杂谈
Jun 20 Python
python入门教程之识别验证码
Mar 04 Python
一个基于flask的web应用诞生 flask和mysql相连(4)
Apr 11 Python
机器学习实战之knn算法pandas
Jun 22 Python
Python实现的统计文章单词次数功能示例
Jul 08 Python
利用Pandas和Numpy按时间戳将数据以Groupby方式分组
Jul 22 Python
解决Djang2.0.1中的reverse导入失败的问题
Aug 16 Python
wxpython多线程防假死与线程间传递消息实例详解
Dec 13 Python
Tensorflow 使用pb文件保存(恢复)模型计算图和参数实例详解
Feb 11 Python
python uuid生成唯一id或str的最简单案例
Jan 13 Python
Python3 类型标注支持操作
Jun 02 Python
pandas中pd.groupby()的用法详解
Jun 16 #Python
python中pd.cut()与pd.qcut()的对比及示例
Jun 16 #Python
Python自动操作神器PyAutoGUI的使用教程
Jun 16 #Python
python内置模块之上下文管理contextlib
Jun 14 #Python
Python时间操作之pytz模块使用详解
Django框架之路由用法
Jun 10 #Python
深入理解pytorch库的dockerfile
Jun 10 #Python
You might like
第一个无线电台是由谁发明的
2021/03/01 无线电
改造一台复古桌面收音机
2021/03/02 无线电
非常不错的MySQL优化的8条经验
2008/03/24 PHP
PHP异步调用socket实现代码
2012/01/12 PHP
PHP备份数据库生成SQL文件并下载的函数代码
2012/02/05 PHP
获取用户Ip地址通用方法与常见安全隐患(HTTP_X_FORWARDED_FOR)
2013/06/01 PHP
php实现简单爬虫的开发
2016/03/28 PHP
php中关于长度计算容易混淆的问题分析
2016/05/27 PHP
PHP Ajax JavaScript Json获取天气信息实现代码
2016/08/17 PHP
PHP如何实现订单的延时处理详解
2017/12/30 PHP
JS 页面内容搜索,类似于 Ctrl+F功能的实现代码
2007/08/13 Javascript
javascript级联下拉列表实例代码(自写)
2013/05/10 Javascript
JavaScript基础篇之变量作用域、传值、传址的简单介绍与实例
2013/06/29 Javascript
js获取窗口相对于屏幕左边和上边的位置坐标
2014/05/15 Javascript
jquery获取当前日期的方法
2015/01/14 Javascript
JS实现鼠标滑过链接改变网页背景颜色的方法
2015/10/20 Javascript
javascript实现瀑布流加载图片原理
2016/02/02 Javascript
nginx配置React静态页面的方法教程
2017/11/03 Javascript
angular动态表单制作
2018/02/23 Javascript
JavaScript实现图片的放大缩小及拖拽功能示例
2019/05/14 Javascript
Vue通过WebSocket建立长连接的实现代码
2019/11/05 Javascript
JS实现音乐导航特效
2020/01/06 Javascript
JS异步宏队列与微队列原理区别详解
2020/07/02 Javascript
python生成器generator用法实例分析
2015/06/04 Python
Python的Django框架中使用SQLAlchemy操作数据库的教程
2016/06/02 Python
轻松实现TensorFlow微信跳一跳的AI
2018/01/05 Python
python中matplotlib的颜色及线条控制的示例
2018/03/16 Python
Python DataFrame 设置输出不显示index(索引)值的方法
2018/06/07 Python
Django的Modelforms用法简介
2019/07/27 Python
Python作用域与名字空间原理详解
2020/03/21 Python
Python xlrd/xlwt 创建excel文件及常用操作
2020/09/24 Python
Python监听键盘和鼠标事件的示例代码
2020/11/18 Python
CSS实现圆形放大镜狙击镜效果 只有圆圈里的放大
2012/12/10 HTML / CSS
自主招生自荐信指南
2014/02/04 职场文书
《草原的早晨》教学反思
2014/04/08 职场文书
2014年优秀党员材料
2014/12/18 职场文书