库中处理时间的各种函数与方法也加进来讨论!

图片[1]-库中处理时间的各种函数与方法也加进来讨论!-4747i站长资讯

在上一篇文章中,我们阐明了时间库和库中各种时间对象的处理方法,以及它们之间的转换方法。

我们发现时间库和库确实同名,但是调用方法和所属的类完全不同,这也是使用过程中出现各种混淆的原因。

今天,我们还讨论了库中处理时间的各种函数和方法。当然python 时间序列模型,由于库中处理时间的方法和类太多了,我们只讨论其中的一部分,尤其是时间库、库相关和混淆的知识。

(一) 这不是那个

相信看过上一篇文章的同学对时间库中的unix时间戳还是有印象的,但是里面的对象和unix时间戳格式完全不同。

中的对象可以说是 中的时间序列对象的“单元格”,如果我们有如下 [ns] 类型的对象:

你会发现,当你提取第一个元素时,返回的是一个对象。当然,我们也可以自己创建一个对象:

图片[2]-库中处理时间的各种函数与方法也加进来讨论!-4747i站长资讯

从上面的代码你会发现你可以通过 pd.() 方法将 unix 时间戳、字符串日期、库直接转换为对象。

反过来呢?如果要将对象转换为 unix 时间戳,可以使用 pd..() 方法:

(二) 生成时间序列

作为处理多维数组的“神器”,本文当然是处理时间序列的方法。其中,国内生成时间序列的方法有很多,最常用的方法是pd.(),我们来看看它的用法:

l pd.(start, end, freq) 生成一个时间段

n start:开始时间,参数可以是库中的对象python 时间序列模型,也可以是字符串。

n end:结束时间,参数可以是库中的对象,也可以是字符串。

n freq:时间频率,’Y’表示年,’M’表示月,’D’表示日,’H’表示小时,’Min’表示分钟

注意这里的开始时间和结束时间参数所指向的对象可以是 . 对象:

图片[3]-库中处理时间的各种函数与方法也加进来讨论!-4747i站长资讯

当然,这里的开始时间除了实例之外还可以用字符串来表示(注意这里是使用的库中的类,而不是库中的类)。

以2019年7月17日为例,也可以是字符串”、’2019-07-17’、’2019/07/17’……

图片[4]-库中处理时间的各种函数与方法也加进来讨论!-4747i站长资讯

从上面可以看出,pd.()方法生成了一个长度为200、数据类型、时间频率为天的对象。

也就是说,从2019年7月17日到2020年2月1日,包括开始和结束日期,一共200天。这是因为默认频率是每天,freq=’D’。您还可以通过更改时间频率来添加和修改freq 参数。有关详细信息,请参阅上面的使用方法。

如果我们想从 2019 年 7 月 17 日开始,按照每天的时间频率生成一个长度为 200 的对象,我们可以这样写:

图片[5]-库中处理时间的各种函数与方法也加进来讨论!-4747i站长资讯

对应的,如果想以2020年2月1日为结束日,根据每天的时间频率,生成一个长度为200的对象,可以这样写:

图片[6]-库中处理时间的各种函数与方法也加进来讨论!-4747i站长资讯

(三) .() 方法

当然,上面的方法生成了一个对象,可以通过pd.()方法转换为对象:

图片[7]-库中处理时间的各种函数与方法也加进来讨论!-4747i站长资讯

但是对于非标准的日期字符串,需要使用pd.()方法进行转换,比如:

图片[8]-库中处理时间的各种函数与方法也加进来讨论!-4747i站长资讯

(四) 类

库中有日期的增减类,库中也有专门的类作为时间间隔对象,可以直接应用于上述类型对象。

它的用法与.class类似,但需要注意的是,其中的参数名称都是以’s’结尾的。

类型对象可以直接使用对象来加减日期:

图片[9]-库中处理时间的各种函数与方法也加进来讨论!-4747i站长资讯

也可用于对象:

图片[10]-库中处理时间的各种函数与方法也加进来讨论!-4747i站长资讯

(五) 时间序列日期格式

转换类型对象的日期格式,可以使用实例方法.dt.(),其格式字符串仍然可以参考库中的格式字符串对照表:

图片[11]-库中处理时间的各种函数与方法也加进来讨论!-4747i站长资讯

图片[12]-库中处理时间的各种函数与方法也加进来讨论!-4747i站长资讯

转换类型对象的日期格式,可以使用实例方法.dt.(),其格式字符串依然可以参考文章开头库中的格式字符串对照表:

图片[13]-库中处理时间的各种函数与方法也加进来讨论!-4747i站长资讯

但是如果你注意一下,你会发现转换后的数据类型已经从类型变成了类,也就是字符串。

如果将字符串时间重新转换为类型,可以使用上面提到的 pd.() 方法:

图片[14]-库中处理时间的各种函数与方法也加进来讨论!-4747i站长资讯

(六) 结束语

时间库和库中各种对象处理时间的方法虽然错综复杂,相互关联,但在使用上却有着不同的侧重点和差异。

时间库和库的对象一般用于涉及时间问题的程序设计中,比如爬虫获取不规则时间时遇到的格式转换问题,会用到很多。

里面有很多种时间相关的类,方法也很丰富,涉及时间处理的方方面面,主要用于序列数据的处理,不同于时间库和单独处理一些日期数据的库.

就数据分析而言,在处理时间序列数据时用得太多,以至于很多人几乎忘记了时间库和库的存在。一般来说,对于数据分析的初学者来说,可以算是重点学习方面,但是时间库和时间库是标准库,时间类的基本使用方法的学习是必不可少的。

文章来源:http://baijiahao.baidu.com/s?id=1666465003558834338&wfr=spider&for=pc

------本页内容已结束,喜欢请分享------

感谢您的来访,获取更多精彩文章请收藏本站。

© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享