第十天,我們來到資料分析非常核心的一大主題——時間序列資料處理。無論是電商交易紀錄、網站流量日誌還是股市行情,資料幾乎都帶有時間戳記。然而原始資料讀入時,時間通常只是一串文字(object),無法直接比對日期或計算時間差。今天我們建立純 Python 腳本 day10_pandas_datetime.py,掌握時間字串轉換、日期特徵抽取以及時間間隔計算。
第一部分
新建 day10_pandas_datetime.py
首先建立包含時間文字字串的交易紀錄,使用 pd.to_datetime() 轉為 Pandas 標準的 datetime64 型態,並觀察型別轉換前後的差異:
第二部分
轉換成 Datetime 之後,就能透過 .dt 存取器輕鬆拆解時間特徵,例如萃取出年份、月份、星期幾(Weekday)或小時,進一步分析使用者的購買習慣(如週末效應或離峰時段):
第三部分
時間序列另一個強大功能是「計算時間差(Time Delta)」與「日期範圍篩選」。我們模擬出貨時間,計算從下單到出貨的花費時數,並篩選出指定日期之後的訂單:
第四部分
在終端機輸入 python day10_pandas_datetime.py 執行驗證,確認欄位型態轉換、星期特徵提取與出貨時差運算皆正確顯示。按 Ctrl + S 儲存後推送到遠端儲存庫:
今日心得/遇到的問題
今天完成了時間序列的初體驗。最關鍵的一步就是剛載入資料時務必使用 pd.to_datetime() 進行轉型,一旦欄位成為 datetime64,後續就能利用強大的 .dt 屬性一秒拆解出星期與月份等業務特徵,也可以直接使用 > 或 <= 進行直覺的日期文字比對,大幅省去手動切割字串的麻煩。