資料科學的完整學習路徑 Python版

2021-07-02 19:13:13 字數 2610 閱讀 6180

假如你想成為乙個資料科學家,或者已經是資料科學家的你想擴充套件你的技能,那麼你已經來對地方了。本文的目的就是給資料分析方面的python新手提供乙個完整的學習路徑。該路徑提供了你需要學習的利用python進行資料分析的所有步驟的完整概述。如果你已經有一些相關的背景知識,或者你不需要路徑中的所有內容,你可以隨意調整你自己的學習路徑,並且讓大家知道你是如何調整的。

步驟0:熱身

開始學習旅程之前,先回答第乙個問題:為什麼使用python?或者,python如何發揮作用?

**datarobot創始人jeremy在pycon ukraine 2014上的 30分鐘演講 ,來了解python是多麼的有用。

步驟1:設定你的機器環境

如果你在安裝過程中遇到任何問題,你可以在 這裡 找到不同作業系統下更詳細的安裝說明。

步驟2:學習python語言的基礎知識

你應該先去了解python語言的基礎知識、庫和資料結構。codecademy上的 python課程 是你最好的選擇之一。完成這個課程後,你就能輕鬆的利用python寫一些小指令碼,同時也能理解python中的類和物件。

具體學習內容:列表lists,元組tuples,字典dictionaries,列表推導式,字典推導式。

任務:解決hackerrank上的一些python教程題,這些題能讓你更好的用python指令碼的方式去思考問題。

步驟3:學習python語言中的正規表示式

你會經常用到正規表示式來進行資料清理,尤其是當你處理文字資料的時候。學習正規表示式的最好方法是參加 谷歌的python課程 ,它會讓你能更容易的使用正規表示式。

任務:做關於 小孩名字的正規表示式練習 。

如果你還需要更多的練習,你可以參與這個 文字清理的教程 。資料預處理中涉及到的各個處理步驟對你來說都會是不小的挑戰。

步驟4:學習python中的科學庫—numpy, scipy, matplotlib以及pandas

從這步開始,學習旅程將要變得有趣了。下邊是對各個庫的簡介,你可以進行一些常用的操作:

•根據 numpy教程 進行完整的練習,特別要練習陣列arrays。這將會為下邊的學習旅程打好基礎。

•接下來學習 scipy教程 。看完scipy介紹和基礎知識後,你可以根據自己的需要學習剩餘的內容。

•這裡並不需要學習matplotlib教程。對於我們這裡的需求來說,matplotlib的內容過於廣泛。取而代之的是你可以學習 這個筆記 中前68行的內容。

•最後學習pandas。pandas為python提供dataframe功能(類似於r)。這也是你應該花更多的時間練習的地方。pandas會成為所有中等規模資料分析的最有效的工具。作為開始,你可以先看乙個關於pandas的 10分鐘簡短介紹 ,然後學習乙個更詳細的 pandas教程 。

您還可以學習兩篇部落格 exploratory data analysis with pandas 和 data munging with pandas 中的內容。

額外資源:

•如果你需要一本關於pandas和numpy的書,建議wes mckinney寫的 「python for data analysis」 。

•在pandas的文件中,也有很多pandas教程,你可以在 這裡 檢視。

任務:嘗試解決哈佛cs109課程的 這個任務 。

步驟5:有用的資料視覺化

參加cs109的這個 課程 。你可以跳過前邊的2分鐘,但之後的內容都是乾貨。你可以根據這個 任務 來完成課程的學習。

步驟6:學習scikit-learn庫和機器學習的內容

現在,我們要開始學習整個過程的實質部分了。scikit-learn是機器學習領域最有用的python庫。這裡是該庫的 簡要概述 。完成 哈佛cs109課程 的課程10到課程18,這些課程包含了機器學習的概述,同時介紹了像回歸、決策樹、整體模型等監督演算法以及聚類等非監督演算法。你可以根據各個 課程的任務 來完成相應的課程。

額外資源:

•如果說有那麼一本書是你必讀的,推薦 programming collective intelligence 。這本書雖然有點老,但依然是該領域最好的書之一。

•此外,你還可以參加來自yaser abu-mostafa的機器學習 課程 ,這是最好的機器學習課程之一。如果你需要更易懂的機器學習技術的解釋,你可以選擇來自andrew ng的 機器學習課程 ,並且利用python做相關的課程練習。

•scikit-learn的教程

任務:嘗試kaggle上的這個 挑戰

步驟7:練習,練習,再練習

恭喜你,你已經完成了整個學習旅程。

你現在已經學會了你需要的所有技能。現在就是如何練習的問題了,還有比通過在kaggle上和資料科學家們進行競賽來練習更好的方式嗎?深入乙個當前 kaggle 上正在進行的比賽,嘗試使用你已經學過的所有知識來完成這個比賽。

步驟8:深度學習

現在你已經學習了大部分的機器學習技術,是時候關注一下深度學習了。很可能你已經知道什麼是深度學習,但是如果你仍然需要乙個簡短的介紹,可以看 這裡 。

我自己也是深度學習的新手,所以請有選擇性的採納下邊的一些建議。 deeplearning.net 上有深度學習方面最全面的資源,在這裡你會發現所有你想要的東西—講座、資料集、挑戰、教程等。你也可以嘗試參加 geoff hinton的課程 ,來了解神經網路的基本知識。

英文出處: www.analyticsvidhya.com

文章出處:

資料科學的完整學習路徑(Python版)

笑虎 翻譯,英文出處 analyticsvidhya。歡迎加入 翻譯組。從python菜鳥到python kaggler的旅程 譯註 kaggle是乙個資料建模和資料分析競賽平台 假如你想成為乙個資料科學家,或者已經是資料科學家的你想擴充套件你的技能,那麼你已經來對地方了。本文的目的就是給資料分析方...

資料科學的完整學習路徑 Python版

從python菜鳥到python kaggler的旅程 譯註 kaggle是乙個資料建模和資料分析競賽平台 假如你想成為乙個資料科學家,或者已經是資料科學家的你想擴充套件你的技能,那麼你已經來對地方了。本文的目的就是給資料分析方面的python新手提供乙個完整的學習路徑。該路徑提供了你需要學習的利用...

tensorflow 科學學習路徑

我們接觸到的 tensorflow 學習資料,要麼屬於零星介紹,要麼從頭到尾平鋪介紹。稍微有開發經驗的人知道,這是一種低效的資料。大家都知道從專案入手學習一門語言是最快的。但是,如何做?對於乙個入門者,對於專案是什麼尚且不能完全認識,更別說在做專案的基礎上學習一門語言。在做專案的過程中學習一門語言,...