程式初學者的資料分析自學資源,不藏私整理分享

Weihsiaochien
6 min readMar 16, 2021

--

去年拿到 MSBA offer 後,因為疫情選擇 defer 一年入學。在這段的時間裡,才正式從 0 開始接觸 Python 、R 等資料分析程式語言。熱愛找資料學習的我,也摸索出了一套自學的資源。陸續有滿多朋友詢問,因此就整理了這篇與大家交流分享。

01. 讀書會

熱愛參加讀書會的我,常會遇到朋友詢問怎麼找到讀書會的管道。

很幸運的,過去待的幾間公司都有熱愛學習的同事們,因此有不少讀書會都是同事、朋友們自主舉辦。在這些讀書會中,與資料科學相關的主題包含 Business Intelligence、Python Pandas、Tensor Flow、Tableau 、Power BI 等,短則一個週末、長則有超過一年的。

如果身旁沒有相同目標的朋友,也不妨透過網路找找。 在Data Science Meetup 台灣資料科學社群Taipei Women in Tech等 Facebook 社團中,不時會有人出來組讀書會,又或者你也可以擔任號召者的角色。

除此之外,PTT StudyGroup與 Meetup 也都是不錯的管道。PTT StudyGroup 中可以用關鍵字搜尋或者自己發文組團。而在 Meetup 中,有許多資料科學社群會舉辦實體或線上的讀書會,其中包含 R ladies、Tensor Flow Group Taipei 等舉辦的活動,都是我在 Meetup 上找到的。

02. 線上課程

Coursera

Coursera 課程大多是大學或者大型公司所開設的,Coursera 的課程會從比較基礎的理論教起,課程中會穿插許多小考題測試,可以直接用旁聽的方式上課。然而若有心要拿到課堂證明放在 Linkedin 上面的話,需要直接付費註冊或者是申請獎學金(網路上有相關申請方式,就不贅述了)的方式參與課程。

需要注意的是,Coursera 基本上就是在大學修課取得學分的概念,每週有作業、甚至有期末作業需要繳交,因此要有心理準備。

去年收到錄取後,學校有整理一系列 University of Michigan 以及 IBM 開設的課程,推薦我們先修。包含:IBM: Machine Learning with Python、IBM: Data Analysis with Python、U Mich: Programming for Everybody、U Mich: Understanding and Visualizing Data with Python、U Mich: Introduction to Data Science in Python 等,覺得還滿適合初學者的,不會太難,有興趣可以搜尋。

另外機器學習大神林軒田所開的神課也是在 Coursera 上,課程內容滿進階的,如果基礎已穩定或許可以挑戰看看。

Udemy

不同於 Coursera 是學校單位,Udemy 主要由業界各方人才所開設,切入點較為實務。課程長度短則三五小時、長則四五十小時都有。
之前公司讀書會是以 Data Analysis with Pandas and Python 課程為主要內容,對於 Pandas 套件有滿清楚的教學介紹。

Udemy 一樣也有課程證明,可以直接購買課程或者到 Facebook 社團Udemy限免課程Soft & Share — 特價資訊分享,或者網頁挖寶,不定期有許多課程折扣或者免費 coupoun。

特別推薦近期愛用中的的 Study Camp 論壇。論壇中每天都有整理 Udemy 限時免費的課程連結,大多是新開課的課程推銷,但不時有舊的課程參與優惠。

edX

相較於 Coursera 與 Udemy,並沒有很常使用 edX。但是著名的程式語言神課 Havard CS50 是放在 edX 上面的,因此也列上來讓大家參考。

個人非常推薦 CS50 課程,教授 David 教學非常有熱誠,常用各種道具與練習來講述看似艱深的演算法,在 8+1 周的時間裡深入潛出的帶出基礎 Computer Science 課程的各種面向。

要硬說缺點的話,可能就是 David 的語速非常快(其他課通常可以 1.5 到 2 倍速聽,但 CS50 無法)。另外還有那門課漲價到 199 USD,目前還下不了手,只是旁聽。

YouTube

如果不在乎課堂證明的話,Youtube 也是一個非常好找資源的平台。使用方法上,主要會針對想要進一步了解的關鍵字搜尋,並篩選觀看次數高的查看。之前在找關聯性資料庫的說明時,意外找到線上繪圖工具平台 Lucidchart 推出的影片,講得非常清楚,有種挖到寶的感覺。底下有很多留言還說十分鐘影片勝過學校四五週的課程。

除了特定關鍵字查詢外,MarinStatsLectures-R Programming & Statistics、StatQuest 等,也是補充統計學知識的愛用channel。

MOOCs(Massive Open Online Courses)

當然除了以上幾個國外課程網站外,若英文程度還沒有那麼好的朋友,也不妨從臺灣各個大學所開設的 MOOCs下手,有很多中文課程可以聽聽看。

學海無涯,放張三年前壯遊至歐洲旅遊的照片自我勉勵

03. 刷題練習網站

練習還是非常重要的。事實上,網路上有非常多的練習題目的網站,也有不少有開設課程可以搭配上課練習,個人常用的網站包含:Hacker Rank、Datacamp、SQL zoo 等。挑個順眼的把想練習的語言從 easy 開始刷起來。

以 Hacker Rank 而言,就有討論區可以與其他人討論題目或者參考大家卡住的點以及更好的寫法。個人也是認為免費版本就滿夠用的,有需要的話也可以再自行升級。SQL zoo 雖然網頁沒有正確答案,但是複製題目下來搜尋一定有解答,可以再自行查詢。

如果程度不錯,也可以挑戰軟體工程師知名刷題網站 Leetcode。不過 Leetcode 上比較多演算法相關的題目,可以再評估是否合適。

04. 書籍

除了線上課程之外,有一本書可以翻閱查看也滿重要的,因此也滿推薦買本書學習。基本上初學的內容大同小異,除了網路推薦外,可以試著到書局翻翻看,就拿一本順眼的陪伴你就好。

我有購買 O’REILLY 的精通 Python- 運用簡單的套件進行現代運算(中文版),滿好讀的,也有不少程式碼可以練習。然而大部分的專有名詞、用語都是原文的,中文主要就是看得比較快,還是建議有本原文書搭配查看。

另外網路上也有人將 Machine Learning 相關的原文書 pdf 檔案整理在 github 上面,有心可以搜尋到不少寶物,這邊因為怕有版權問題就不附上了。

以上的整理是這段時間透過各式管道的累積,目前仍在學習路上。第一次在 Medium 發文,感謝大家的閱讀,未來也規劃整理相關文章,希望可以與大家互相交流、指教。如果喜歡此篇內容的話,歡迎大家不吝鼓掌、分享與追蹤!

--

--