踏入數據分析領域必備:Side Project的準備

2023/07/06閱讀時間約 6 分鐘
  在之前的文章中,分享了我從公務員轉職到資料科學家的歷程,其中大大增加我履歷亮點的,就是大量的專案經驗,也就是大家稱的Side Project。這篇文章,想要分享Side Project為何、規模應該多大、方向怎麼找、在職期間怎麼找時間規劃完成自己的專案......等,希望可以給讀者一些更具體的想法!

Side Project是什麼

  關於Side Project是什麼、如何開始,我詢問了ChatGPT給出以下回答。
ChatGPT對Side Project的理解
  對我而言,Side Project是在正職以外自己進行的專案,不管是靈光一現的靈感,或是遇到問題的解方,都可以成為自己獨特的Side Project。Side Project 重要之處在於,因為作品能幫你說話。尤其是轉職前沒有相關工作經驗,Side Project就可以大大提升說服力,讓人一看履歷就相信你具備技術能力。
  如果上面ChatGPT的回答你都看得懂,那恭喜,你已經是可以獨當一面的數據分析師了,接下來只缺一個資料、一個靈感、一股衝勁,就可以完成很棒的專案。
  如果ChatGPT的回答看完還是覺得很迷茫,那沒關係,接下來我會分享一些做專案的心得,試圖解決大家心中的困惑。

Side Project方向怎麼找

  如果是要接觸數據分析、資料科學相關的領域,一開始一定會苦於找不到專案的方向,這時,可以從生活中的問題下手,例如:返鄉買高鐵票好苦惱,這時可以寫一個簡單的爬蟲專案,自動化買票的流程;找租屋/買房時找不到CP值高的房子,可以透過政府Open Data中的實價登錄資料,分析影響租房/買房價格的因素,試圖找到合理的價格。
  另外,若想做資料分析專案,卻苦於沒有資料,可以上政府開放資料平台,上面也可以看到一些公開的加值應用;或是上Kaggle,裡面有許多比賽,有各種的資料可以玩,不同的任務要達成,更重要的是,通常都會有許多人分享他們的code與分析邏輯,是一個充滿寶藏的地方。
  這邊跟大家分享幾個我曾經玩過的Kaggle競賽,在裡面學到了很多資料處理、建模分析的技巧:
  接著,站在技術層面,我整理出幾個資料分析相關專案常見的分類,可以參考。
  • 資料分析專案:包括結構化資料分析、自然語言處理(NLP)等,可以在專案中實踐從定義問題、資料探索性分析、資料前處理、建模分析,到結果詮釋,這一連串的流程,展現對資料分析的掌握度與理解力。
  • 影像辨識專案:包括影像分類、物件偵測等,可以結合生活中的議題實作,例如實作抽菸辨識,若辨識出抽菸則發出訊號;做食物分類,計算熱量提供使用者飲食營養參考。
  • 網路爬蟲專案:網路爬蟲範疇很大,除了從網頁上抓取想要的資訊外,也可以實踐自動化買票、自動化操作社群等等,只要有簡單的操作概念,就可以變化出各種應用。
  • 流程自動化專案:善用程式自動化工作流程,例如,偵測股票價格,到價值點時自動傳Line通知、自動化整理報表、生成例行性簡報(PPT)等。
  以上這些專案只是大略的分類,若還找不到方向,不妨找個有興趣的類別開始學習相關技術、發想有趣議題,開始自己的Side Project吧。

做Side Project需要的程式能力

新手也可以完成Side Project!

  想做自己的專案,我覺得並不需要累積多強的程式能力,甚至有基礎的程式能力,透過ChatGPT的協助,也可以完成一個有趣的專案。舉個例子,你可以從一些券商的網站找到上市櫃公司的年報/季報,你想要把有興趣的財務指標抓下來,作為投資決策參考,並傳到Line上。此時,可以問ChatGPT如何爬取網頁資訊,它可能會告訴你可以使用Python的BeautifulSoup套件完成;問ChatGPT如何傳到Line,他可能會教你用Line Notify傳送或是建構Line Bot。如此一來便完成一個專案了。
  因此,我建議不要猶豫,新手就可以開始做 Side Project。做專案的過程中,可以讓你直接應用所學、累積技術,之後更能協助你抵達求職彼岸,甚至找到寫程式的樂趣,持續進步前行。
你不需要很厲害才開始,但開始了才會變得厲害。

怎麼知道做的專案有沒有價值

  我認為好的專案不一定是蘊含很深的技術能力,更重要的是如何定義問題,並用程式解決問題。另外,面試的時候,常被問到是專案背後的動機、解決問題的思路、是否遇到什麼困難以及如何解決,最後是專案帶來的效益。因此,我認為一個有價值的專案,就是說得出故事的專案,
透過每次的 Side Project 讓自己一點一滴累積成長,這就是最大的價值。

如何在職完成Side Projects

  在職期間要完成Side Project,對很多人來說是個挑戰。但我在職將近1年半的時間,至少完成10件可以放作品集的Side Project,關於如何有效率完成專案,我想歸納成四點分享給大家。
  1. 目標導向:因為Python跟R有許多模組可以實現不同的目標,所以在學習Python或R時,在掌握基本概念後,我通常會以目標導向進行學習,例如:我想學習如何用Python爬蟲,就去學習BeautifulSoup與selenium模組的用法,這樣也可以累積實力的同時,也完成自己想做的小專案。
  2. 從過去的作業/小專案延伸:過去的所有成果都有其價值,因此可以試著延伸過去所做的小程式,甚至將它們串在一起也許就能成為一個專案。
  3. 改寫程式:網路上有很多大神寫的程式碼,例如在Kaggle、Github上很多人會分享code,所以可以改寫別人的code,用不同方法實現同個目的,或是優化績效等等。
  4. 多專案並行:在做Side Project的過程中不免會遇到難關,有時候會卡住一段時間,因此我習慣多專案並行,若暫時找不到解方,就先構思或進行下一個專案,或是同個專案的其他部分。我習慣在做專案時用To-do list的方式,訂定項目與階段性目標,達成了就可以劃掉,這樣不僅可以追蹤自己的目標,也可以清楚區分所有想做的事情。

總結

  謝謝大家閱讀到最後,在做專案的過程,其實最重要的還是熱情,要相信自己的Side Project很有趣,做的是好玩的東西,有熱情投入,一定能在每次做Side Project的過程中不斷成長,並且能講出動人的故事。
Fann
Fann
生長在農村,大學後在都市打滾。大學就讀會計系雙主修社會學系,研究所讀農業經濟,喜歡分析所以接觸了程式,也對科技應用於各種問題的解決深感興趣,試圖用科技為生活找尋解方。在這裡記錄跨領域學習的歷程與收穫,分享學習資源,或偶爾書寫工作或生活的點滴。
留言0
查看全部
發表第一個留言支持創作者!