pd.to_datetime 参数解析及datetime属性提取


1、pandas.to_datetime常用参数说明

pandas.to_datetime(argerrors='raise'dayfirst=Falseyearfirst=Falseutc=Noneformat=Noneexact=Trueunit=Noneinfer_datetime_format=Falseorigin='unix'cache=True

  • errors:参数raise时,表示传入数据格式不符合是会报错;ignore时,表示忽略报错返回原数据;coerce用NaT时间空值代替。
  • dayfirst:表示传入数据的前两位数为天。如‘030820’——》2020-03-08.
  • yearfirst:表示传入数据的前两位数为年份。如‘030820’——》2003-08-20.
  • format:自定义输出格式,如“%Y-%m-%d”.
  • unit:可以为['D', 'h' ,'m', 'ms' ,'s', 'ns']
  • infer_datetime_format:加速计算
  • origin:自定义开始时间,默认为1990-01-01

1.1、实例

  • errors参数
1 pd.to_datetime(['2014-03-04','123'], format='%Y-%m-%d',errors='raise')

报错

1 pd.to_datetime(['2014-03-04','123'], format='%Y-%m-%d',errors='ignore')

1 pd.to_datetime(['2014-03-04','123'], format='%Y-%m-%d', errors='coerce')

  •  unit参数
1 pd.to_datetime(1490195805, unit='s')  #精确到秒

1 pd.to_datetime(2490195905423302912, unit='ns')#精确到纳秒

  •  origin参数
1 pd.to_datetime([1, 32, 3], unit='h',
2                    origin=pd.Timestamp('2020-01-01'))  #与起始时间相加,unit可以为【(D,s,ms,us,ns)】

  •  dayfirst与yearfirst参数

2、date_time格式属性

读取数据并将时间列转为datetime格式

2.1 提取年月日

1 #提取年月日
2 print(f'{f[0]} 提取年月日为: {f[0].year}年{f[0].month}月{f[0].day}日')

2.2 提取时分秒

1 #提取时分秒
2 print(f'{f[0]} 提取时分秒为: {f[0].hour}时{f[0].minute}分{f[0].second}秒')

2.3 提取季节、星期

1 #提取季节星期
2 print(f'{f[0]} : 第{f[0].quarter}季,星期:{f[0].weekday_name},数字表示星期:{f[0].dayofweek}')

 3、批量处理datetime格式

3.1 列表推导式提取星期再统计

1 #列表推导式提取星期再统计
2 pd.Series([i.weekday_name for i in f]).value_counts()

3.2 Series数据的apply应用

1 #Series数据的apply应用
2 f.apply(lambda x:x.weekday_name).value_counts()     #apply 循环

3.3 datetime数据批量处理

1 # datetime数据批量处理
2 f.dt.weekday_name.value_counts()

结果都一样

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM