1. to_datetime()函数
1.1 函数功能
将对象转换为Pandas的datetime对象
1.2 函数语法
pandas.to_datetime(arg, errors='raise', dayfirst=False, yearfirst=False, utc=False, format=None, exact=_NoDefault.no_default,
unit=None, infer_datetime_format=_NoDefault.no_default, origin='unix', cache=True)
1.3 函数参数
参数 含义 arg 要转换为datetime的日期、时间或时间戳数据 errors 指定如何处理转换时的错误。可选值为:“raise”(默认):出现错误时抛出异常;"coerce”:将无法转换的值设为NAT;“ignore”:忽略错误,返回原无效输入的值 dayfirst 布尔值,要解析的数据是否为日在月之前,若是,则设置为True;默认为False yearfirst 布尔值,要解析的数据是否为年在前,若是,则设置为True;默认为False utc 指定是否将输入的时间解析为UTC时间,默认为False format 指定输入数据的日期时间格式,默认为None,表示自动推断格式 exact 布尔值,format的匹配要求,默认为True,完全匹配 unit 输入数据的单位,可选值为’s’(秒)、‘ms’(毫秒)、‘us’(微秒)、‘ns’(纳秒) infer_datetime_format 布尔值,默认为False,当设置为True且format未指定格式时,解析日期前尝试推断日期字符串的类型 origin 如果输入数据为整数,则指定日期时间的基准点,一般是1970-01-01 cache 指定是否缓存解析字符串,以加快后续解析
1970年1月1日是计算机编程中的一个重要时间节点,被称为Unix纪元(Unix Epoch)。
它是指协调世界时(UTC)时间下的标准时间起点,用于表示时间戳。
在Unix纪元之前的时间戳被认为是负数,而从Unix纪元开始的时间戳以秒为单位递增。
换句话说,Unix纪元开始时的时间戳为0,然后每秒增加1。
1.3.1 to_datetime()函数
data = pd. read_csv( 'C:\\Users\\changyanhua\\Desktop\\data_wuliu.csv' , encoding= 'gbk' )
print ( data. head( ) )
print ( data. info( ) )
data[ '销售时间' ] = pd. to_datetime( data[ '销售时间' ] )
print ( data. info( ) )
1.4 获取日期、时间
属性 含义 Series.dt.date 用于提取日期时间序列中每个元素的日期部分 Series.dt.time 提取日期时间序列中每个元素的时间部分
1.5 获取年,月,日,时,分,秒
属性 含义 Series.dt.year 返回日期时间序列中的年 Series.dt.month 返回日期时间序列中的月 Series.dt.day 返回日期时间序列中的日 Series.dt.hour 返回日期时间序列中的小时 Series.dt.minute 返回日期时间序列中的分钟 Series.dt.second 返回日期时间序列中的秒
1.6 获取对应的星期
属性 含义 Series.dt.dayofweek 返回的是一个整数,表示每个日期时间元素对应的星期几,范围从0到6,其中0表示星期一,1表示星期二,依此类推,6表示星期日。 Series.dt.day_of_week 返回的是一个整数,表示每个日期时间元素对应的星期几,范围从0到6,其中0表示星期一,1表示星期二,依此类推,6表示星期日。 Series.dt.weekday 返回的是一个整数,表示每个日期时间元素对应的星期几,范围从0到6,其中0表示星期一,1表示星期二,依此类推,6表示星期日。 Series.dt.day_name(*args, **kwargs) 返回的是一个字符串,表示每个日期时间元素对应的星期几的完整名称,如"Monday"、"Tuesday"等
1.7 获取日期对应一年的第几天
属性 含义 Series.dt.dayofyear 提取日期时间序列中每个元素在一年中的第几天 Series.dt.day_of_year 提取日期时间序列中每个元素在一年中的第几天
1.8 获取日期对应的季度
属性 含义 Series.dt.quarter 提取日期时间序列中每个元素所属的季度 。返回的值是一个整数,范围从1到4,表示第一季度到第四季度
1.9 获取日期对应的年、周、星期几
方法 含义 Series.dt.isocalendar() 返回日期时间序列中每个元素的ISO日历表示,其中包括ISO年份、ISO周数和ISO周日(星期几)
注意:
此时返回的星期:为1 - 7 :分别对应星期一, .. . , 星期日,与前面的dayofweek、day_of_week、weekday
返回的结果为0 - 6 :分别对应星期一, .. . , 星期日不同。
1.10 时间四舍五入