資料科學是以知識探索為目的的一種方法,如何將資料一層一層挖掘出有價值的知識。搭配電腦科學的角度來看,「數位化」與「人工智慧」的導入其實是在加快知識管理的流程。簡單來說,資料科學一種從資料到決策的過程。在資料科學當中有一句名言是這樣說的:

資料和特徵決定了機器學習的上限,而模型和演算法只是逼近這個上限而已。

因此,資料在整個分析的過程中扮演非常重要的角色。在真正開始進行分析之前,會建議先透過一些簡單的觀察對資料先有初步的認識。

如何定義一個「資料」專案?

開始一個資料為主的專案時,心中必須先快速想過幾個問題:

  • 我們想要解決的問題是什麼?
  • 會需要用到什麼數據?
  • 資料的來源有什麼?
  • 數據的類型跟種類有什麼?
  • 適合用什麼樣的模型?

你會發現「模型」是最後才會想到的,前面比較重要其實是「資料」這件事。因此整個資料科學的核心,還是從資料開始定義問題。

以同一份的資料來說,可以定義成監督式學習,也可以用非監督式學習的角度切入,就看你從哪個問題切入。

觀察資料的 N 件事

那真正要開始一個專案的時候,會先收集一堆的資料準備分析。而在真正開始進行分析之前,會建議先初步觀察手邊資料,讓自己對資料先有第一層的認識。一方面有助於我們進行資料預處理,另一方面在進行特徵工程時可以給我們一些思路。

這邊向大家分享我自己在拿到資料之後的操作流程,希望透過系統性的方式來建立對資料的感覺。身為資料分析者的敏銳,我們在意的點環繞在「資料的樣⼦是什麼?」,主要可以分為兩個大方向:

  • 有多少資料?
  • 處理上可能會遇到什麼問題?

再往下思考,可以分成更多的小問題:

根據我自己的實務經驗,透過以下的步驟看快速的查閱資料:

  • ① 先認識資料欄位
  • ② 快速檢閱資料樣貌
  • ③ 定義資料類型
  • ④ 類別資料看分佈、連續資料看範圍
  • ⑤ 比較資料間的關係

① 先認識資料欄位

首先,在使用資料之前請務必詳閱「資料說明書」。所謂資料說明書也就是向「資料提供者」請益,很多資料再使用者會經由編碼、縮寫處理,可能難以從資料內容就看懂資料是什麼涵義。或者有些資料本身就具備高度專業性,例如:醫學、製程這一類的數據,初期多半需要仰賴專家的知識補充。

需要知道每個欄位所代表的涵意與數值範圍是什麼。

② 快速檢閱資料樣貌

接下來開始打開資料來看一下,快速檢閱資料的樣貌、形狀。在這裡的樣貌指的是資料有多大多寬,換句話說這一份資料當中有多少個欄位與多少筆資料。

資料量決定使用怎樣層級的工具,假如是 20 筆資料可能手算一算就好。但是如果是 2 萬 筆資料、200 萬筆資料,甚至是 2 億筆的資料在工具的選擇上就會有差。差別主要是可以分成三個階段:「用套裝軟體」→「自己程式」→「分散式架構」,根據資料大小來決定工具的需求。

最近就有一個經典的案例:英國少算近1.6萬武漢肺炎病例疑因資料超出Excel上限英國少算逾1.5萬名武漢肺炎確診患者,疑因超過Excel限制,就是一個沒有考慮的資料量與工具所導致的嚴重問題。

③ 定義資料類型

外部的形狀看完之後,就會進入資料內容來看。會建議用欄位為單位去看,因為在這個階段時我們還不沒辦法好好去看資料內容,先從「感覺」的部分觀察就好。

這裡我們先把所有的欄位分成不同的類型:

  • 類別型:資料內容是有限個字串所組成的集合
  • 數值型:資料內容是可以計算的數字

或是其他非結構型資料,例如時序型、文本型或影像型的資料。

④ 類別資料看分佈、連續資料看範圍

接下來會針對不同的類型的欄位來看,如果是類別型的資料的話會看分佈的情形,有多少種資料、資料的分布狀況等等的。如果是連續資料的話看範圍,會去看一下最大最小值或是標準差的大小,其實就是用統計的方式去看資料。

⑤ 比較資料間的關係

個別欄位看完之後,會來一下「欄位間」的關係,其實就是去比較欄位跟欄位之間的相關係數。有一種常見的手法會計算任兩個欄位的相關係數形成一個相關係數矩陣(Correlation Matrix),通常會搭配熱點圖(Heatmap)做視覺化。透過圖表,可以讓我們一目瞭然哪些欄位是高度相關的。

你懂資料,資料就會幫你

使用資料前,要先跟資料培養感情。對資料的熟悉程度,是可以幫助你在後續的資料前處理或模型分析都先有一層的把握。以上雖然列出很多項目,不過實務上可以在拿到資料後快速的檢查這五點項目。整體看過一輪,差不多就是一個小時內的工。

  • 先認識資料欄位 → 確定資料欄位的意義跟來源
  • 快速檢閱資料樣貌 → 資料量決定使用怎樣層級的工具
  • 定義資料類型 → 將欄位分成數字跟類別
  • 確認類別資料分佈 → 非數值欄位資料我們在意分佈
  • 確認連續資料範圍 → 數值欄位資料我們在意範圍
  • 比較資料間的關係 → 利用相關性矩陣跟熱點圖觀察欄位間的關係

最後這句話跟大家共勉:

「你懂資料,資料就會幫你」




嗨,我是維元,近期推出一個全新型態的【 Python 資料科學教學實戰營 】,結合多元教學形式及豐富課程經驗幫助你更有效地學習。新課程「 Python 程式設計基礎養成 」正在早鳥募資中,歡迎你一起加入資料領域!誠摯的邀請你跟著我們一起從 Python 入門開始,走進資料科學的世界 🙌



📍 報名頁面: https://dscareer.kolable.app/
📍 報名頁面: https://dscareer.kolable.app/
📍 報名頁面: https://dscareer.kolable.app/


License


本著作由Chang Wei-Yaun (v123582)製作,
創用CC 姓名標示-相同方式分享 3.0 Unported授權條款釋出。