【时间转换】py.datetime & pd.to_datetime
preface
前言:
我们在对数据进行操作时,经常会选取某一时间段的数据进行分析。这里为大家介绍两个我经常用到的用来选取某一时间段数据的函数:datetime()
和 pd.to_datetime()
。
今天在进行【机器学习】预测Facebook签到位置 的数据预处理时,遇到一个陌生的方法 pd.to_datetime()
,于是来学习巩固,时间格式化处理与转换。
py.datetime()
preface
前言
Python datetime:
datetime模块提供了以简单和复杂的方式操作日期和时间的类。
datetime包括类如下:
-
date:日期对象,常用的属性有
year, month, day
. - time:时间对象
-
datetime:日期时间对象,常用的属性有
hour, minute, second, microsecond
. - datetime_CAPI:日期时间对象C语言接口
- timedelta:时间间隔,即两个时间点之间的长度
- tzinfo:时区信息对象。
- now(tz=None):返回当前的本地日期和时间。如果可选参数tz没有指定,与 today() 一样。
- strftime(format):返回一个表示日期的字符串,由显式格式字符串控制。引用小时、分钟或秒的格式代码将看到0值。
now() & strftime()
获取系统当前时间 now()
格式化输出时间 strftime()
eg:
-
%Y
:年份数字全称:2021
-
%y
:年份数字缩写:21
-
%m
:月份:07
-
%M
:分钟:‘43’ -
%d
:天:12
-
%D
:日期格式化07/12/21
-
%H
:时 -
%h
:英文缩写july
-
%S
:秒 -
%s
:print()
中格式化输出代表str
获取指定的时间和日期
datetime(%Y, %m, %d, %H, %M, %S)
datetime共有6个参数,分别代表的是年月日时分秒
。其中年月日
是必须要传入的参数,时分秒
可以不传入,默认全为0
。
eg:
import datetime
date = datetime.datetime(2021, 7, 12, 9, 9, 9)
date
date.month
date.year
from datetime import datetime
datetime(2021, 7, 12, 9, 9, 9)
将Str和Unicode转化为datetime
datetime(str,format)
在很多情况下,我们的原始数据中的时间和日期并不是时间类型的,例如excel中可能是Unicode,csv中可能是Str。因此我们在进行时间切片之前首先要将非时间类型的时间数据转换为时间类型。
eg:
注意:
datetime是模块,datetime模块还包含一个datetime类,通过from datetime import datetime导入的才是datetime这个类。
如果仅导入import datetime,则必须引用全名datetime.datetime。
pd.to_datetime()
pandas 中的 to_datetime()
和 datetime()
类似。
获取指定的时间和日期
eg:
pd.to_datetime('2021/7/12/9/9/9', format='%Y/%m/%d/%H/%M/%S')
pd.to_datetime('2021-7-12-9-9-9', format='%Y-%m-%d-%H-%M-%S')
将Str和Unicode转化为时间格式
eg:
时间object转换datetime实例
时间object转换datetime实例及三种数据预处理方式
请参考:【pd.to_datetime】时间object转换datetime实例
内容参考:
衷心感谢!
加油!
感谢!
努力!