python 將日期戳(五位數時間)轉換為標准時間


5位數日期戳

讀取 .mat 文件處理里面數據時,發現里面的日期數據全部都是 “5位數” 數字,很不解;

后來查到可以在excel中通過設置單元格調回標准日期格式,如下:

選中日期戳,右鍵選擇 “格式化單元格(Format Cells)”

選擇需要的日期格式,點擊ok即可

 

 通過代碼轉成標准日期

例如這個DataFrame中的日期,全部都是“日期戳”格式的,但我需要的是人能看懂的“標准日期”;

 確認起始日期

 首先需拿一個“日期戳”對應的時間(標准日期),減去這個日期戳,得出起始時間。

獲取起始時間:

2018-05-02 對應的日期戳為:43222,接下來通過pandasTimedelta() to_datetime() 獲取起始時間。

可以看到起始日期為“1899-12-30

這樣一來后續日期戳轉標准日期,只需要在 “1899-12-30” 的基礎上加 “日期戳”即可。

 批量轉換

 首先定義一個函數用來進行轉換:

#定義轉化日期戳的函數,stamp為日期戳
def date(stamp): 
    delta = pd.Timedelta(str(stamp)+'D')
    real_time = pd.to_datetime('1899-12-30') + delta
    return real_time

然后針對DataFrame 需要轉換的列進行轉換即可:

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM