【轉載】 Python學習–數據分析路線

原文:http://dataunion.org/?p=9805&utm_source=tuicool&utm_medium=referral 
譯者: Allen 
從Python菜鳥到Python Kaggler的旅程(譯註: Kaggle 是一個數據建模和數據分析競賽平臺) 
假如你想成爲一個數據科學家,或者已是數據科學家的你想擴展你的技能,那麼你已經來對地方了。本文的目的就是給數據分析方面的Python新 手提供一個完整的學習路徑。該路徑提供了你須要學習的利用Python進行數據分析的全部步驟的完整概述。若是你已經有一些相關的背景知識,或者你不須要 路徑中的全部內容,你能夠隨意調整你本身的學習路徑,而且讓你們知道你是如何調整的。 
步驟0:熱身 
開始學習旅程以前,先回答第一個問題:爲何使用Python?或者,Python如何發揮做用? 
觀看DataRobot創始人Jeremy在PyCon Ukraine 2014上的 30分鐘演講 ,來了解Python是多麼的有用。 
步驟1:設置你的機器環境 
如今你已經決心要好好學習了,也是時候設置你的機器環境了。最簡單的方法就是從Continuum.io上下載 分發包Anaconda 。Anaconda將你之後可能會用到的大部分的東西進行了打包。採用這個方法的主要缺點是,即便可能已經有了可用的底層庫的更新,你仍然須要等待Continuum去更新Anaconda包。固然若是你是一個初學者,這應該沒什麼問題。 
若是你在安裝過程當中遇到任何問題,你能夠在 這裏 找到不一樣操做系統下更詳細的安裝說明。 
步驟2:學習Python語言的基礎知識 
你應該先去了解Python語言的基礎知識、庫和數據結構。Codecademy上的 Python課程 是你最好的選擇之一。完成這個課程後,你就能輕鬆的利用Python寫一些小腳本,同時也能理解Python中的類和對象。 
具體學習內容:列表Lists,元組Tuples,字典Dictionaries,列表推導式,字典推導式。 
任務:解決HackerRank上的一些Python教程題,這些題能讓你更好的用Python腳本的方式去思考問題。 
替代資源:若是你不喜歡交互編碼這種學習方式,你也能夠學習 谷歌的Python課程 。這個2天的課程系列不但包含前邊提到的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的課程 ,來了解神經網絡的基本知識。 
附言:若是你須要大數據方面的庫,能夠試試Pydoop和PyMongo。大數據學習路線不是本文的範疇,是由於它自身就是一個完整的主題。 
英文出處: www.analyticsvidhya.com 
文章出處: http://python.jobbole.com/80981/ 
第一部分是Python基礎部分,主要是環境的搭建,庫的安裝,基礎語法的瞭解,學習時間2周 
包括Python開發環境的搭建(使用Anaconda+pycharm,安裝該環境包 含了上課所須要的全部庫,即包含numpy、pandas、scipy、matplotlib、scikit-learn等等,網上搜索 Anaconda、pycharm便可獲取安裝。)基礎語法的瞭解,語言的示例和規範,變量、常量、運算符、表達式相關基礎知識。 
第二部分是Python數據挖掘的基礎,主要是python數據分析相關庫的學習和應用,學習時間2周 
Python數據挖掘基礎主要是對數據分析相關庫的使用,好比數據整理須要用到 numpy和pandas庫,數據描述與分析分析則主要用到pandas庫,用Scipy處理非結構化數據,使用迴歸線性模型和迴歸樹模型進行預測等等用 python作數據分析和數據挖掘的庫的應用。 
第三部分是Python作文本挖掘及案例分析,主要是python爬蟲的學習和應用,學習時間2周 
數據分析離不開數據採集和爬取。第三部分主要是教如何利用Python進行網絡爬蟲,以及經過案例學習文本分類和聚類相關知識。學習時間2周 
第四部分是Python數據挖掘案例,主要經過講解案例和動手實踐案例,達到知識的融會貫通的應用。學習時間2周 
第四部分主要是動手、實踐,將上面學習到的理論知識得以應用。第四部分案例覆蓋決策樹、 樸素貝葉斯、最近鄰、隨機森林、支持向量機、神經網絡等重要的數據挖掘方法。擬完成的案例包括不限於如下:使用關聯規則進行購物籃分析、垃圾郵件的識別、 圖像識別、Iris數據挖掘的各類方法比較、電影或者圖書推薦系統構建、屏蔽網頁內容、街景識別和分類、手寫文字的識別、最近鄰迴歸進行預測、降維的各類 方法、k-means聚類和中位數聚類等等。含經典編程寫算法和scikit-learn等。 
最後,除了系統的學習上述相關知識以外,最主要的仍是要複習,實踐,實踐,實踐,最後才能真正出師,成爲Python數據分析和數據挖掘高手。關於本課程的系統學習,你們能夠跟着Gary一塊兒學習《Python數據挖掘實戰》課程,系統的學習上述內容,到時候老師會經過直播互動的形式跟你們一塊兒探討學習。 
相關中文資源以下: 
1.python工做集成環境包 
Python(x,y):下載地址:http://python-xy.github.io/downloads.html 
Pycharm:下載地址:http://www.jetbrains.com/pycharm/download/#section=windows 
2.python數據分析相關庫(Pandas/Numpy/Scipy/Matplotlib) 
若是安裝了上面集成工做包,則下面的包不須要從新安裝了。關於包的安裝方法在學習資源圖書中都有介紹,一般安裝庫採用pip方法,也能夠用pip list查詢系統安裝了哪些庫。 
3.學習資源 
圖書: 
1)Python基礎教程(第2版)[電子版圖書自行百度] 
2)深刻淺出Head First python(中文版)[電子版圖書自行百度] 
PPV課原創文章,轉載請註明出處和連接:http://www.ppvke.com/Blog/archives/27552 
最後補上圖兩張 
這裏寫圖片描述html

相關文章
相關標籤/搜索