尝尝pandas(5)

今天的内容很简单,我们一起来学习在pandas中对时间的处理。

date_range

首先给大家介绍date_range的用法,看名字大家就因该猜得到这个方法的用法了吧,它就是用来处理时间的跨度的。

首尾时间

《尝尝pandas(5)》

当然,除了日/月/年这种写法,还有年/月/日以及年-月-日这两种。

《尝尝pandas(5)》

指定开始和时间的跨度(periods),跨度单位默认为天。

《尝尝pandas(5)》

跨度单位除了天(D)之外,还有一个小时(H),两个小时(2H),两天两小时(2D2H),工作日(B),一周(W,取星期日)

《尝尝pandas(5)》
《尝尝pandas(5)》
《尝尝pandas(5)》
《尝尝pandas(5)》

时区,设置tz参数为上海时间,因为上海时间采用东八区的北京时间,所以是比格林尼治时间晚8个小时。不过奇怪的是,这里我设置北京时间却报错,而且更奇怪的是我查看了官方文档里面是举了北京这个例子的,着实让人摸不着头脑,知道原因的读者请后台留言告诉我,谢谢。

《尝尝pandas(5)》

上面的开始和结束都是闭合的,我们也可以指定其左右(即开始和结束)是否闭合。

《尝尝pandas(5)》

Timestamp

Timestamp是pandas中的一个表示时间戳的类。

《尝尝pandas(5)》
《尝尝pandas(5)》

注意上面的14是以微秒而不是毫秒为单位。

更好玩的是这货竟然还可以使用减法。

《尝尝pandas(5)》

如果指定的时间不在限定的范围之内,则报错。

《尝尝pandas(5)》
《尝尝pandas(5)》

to_datetime

顾名思义,这是一个将某些东西转换为时间的方法。

将表格类型转为时间,注意字典中的键不能更改名字。

《尝尝pandas(5)》

将字符串转为时间,时间必须合法(比如2月30日为非法时间),否则报错。

《尝尝pandas(5)》

解析为年月日格式,存在分秒等其它时间格式则报错。

《尝尝pandas(5)》
《尝尝pandas(5)》

通过设置errors参数为ignore或coerce可以忽略错误输出原字符串或者输出NaT。

《尝尝pandas(5)》

通过设置exact为False,更智能地将其转为正确的时间格式,比如这里不会转为2018-13-50,不过在时间错误的情况下,需要使用format格式化。

《尝尝pandas(5)》

距离1970年1月1日0时0分0秒1435488505秒的时间。跨度的的类型为字符串类型或整型均可。

《尝尝pandas(5)》

为了验证确实是距离1970年1月1日的时间,在这里我将单位设置为天,跨度为1,输出的确实是1970-01-02 00:00:00

《尝尝pandas(5)》

上面的默认起始时间是1970年1月1日,我们还可以设置其它时间,不过需要注意的是这里的跨度类型不能为字符串,即[1,2]不能写成[‘1’,’2’]

《尝尝pandas(5)》

以年或天为首。

《尝尝pandas(5)》

通过设置box为Flase将返回的类型变为数组类型。

《尝尝pandas(5)》
《尝尝pandas(5)》 python小白联盟

    原文作者:雨路浅歌
    原文地址: https://www.jianshu.com/p/83102bde136c
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞