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