時間序列資料在 Excel 中的處理

對於研究或工作的所需,可能會常接觸時序資料,例如:時間-電壓、時間-雨量、時間-氣壓、時間-人數等關係族繁不齊備載,典型的感測器數據報表就如下圖所示。
為呈現各物理量隨時間的變化,常使用Excel、Matlab、Grapher、Python等軟體,但在資料處理過程中,在時間格式 (Time format) 選擇是令人頭痛的,但可以透過浮點數 (Float point) 的形式來描述所需時間格式,特徵為每個浮點數對應的時間具有唯一性,浮點數化的時序資料又具有下列優點:
  • 可做邏輯運算,以利切割、分類或尋找特定數值;
  • 便於時序資料的 I/O 操作;
  • 便於時序資料的傳輸交換。
時間格式所對應的浮點數可以透過 Excel 的表單了解:
  • 「目標年月日」的浮點數在代表 1900/01/01 往後計數的天數,可經由 DATE 函數與 VALUE 函數轉換;
  • 「目標時分秒」的浮點數則依序將一天的總時數、總分數、總秒數作為分母,依序分配各所需時分秒。

透過 Matlab 處理時序資料,與 Excel 計算浮點數差值為 693960,可使用 x2mdate 函數作轉換,會有如此的差異,是因為 Matlab 的起算時間為 0000/01/01;而計算時分秒的方式則同上述。 Matlab 提供  datenum 與 datestr 的函數,提供不同時間格式間,賦予彈性的轉換,其中溝通橋樑即為浮點數,如下程式碼所示;熟捻轉換技巧時,可配合 datetick 函數完成繪圖、變更檔案名稱或檔頭時間命名等。








參考資料:Microsoft Support、MATLAB Documentation;感謝朱崇銳先生提供數據報表演示。

留言

這個網誌中的熱門文章

我們的好朋友fx-82SOLAR

105-水利技師-流體力學精解

壓逆為正 vs. 拉順為正