摘要: 如果你夢想成為一名數據科學家,或者已然是數據科學家的你想擴展自己的工具庫,那麼,你找對地方啦。 本文旨在為做數據分析的Python人提供一條全方位的學習之路,完整講述運用Python進行數據分析的所有步驟......
▲(來源:36大數據)
如果你夢想成為一名數據科學家,或者已然是數據科學家的你想擴展自己的工具庫,那麼,你找對地方啦。 本文旨在為做數據分析的Python人提供一條全方位的學習之路,完整講述運用Python進行數據分析的所有步驟。 當然,如果你已經有了一些知識儲備,或者無需掌握全部的內容,可以按照自己的需求做出調整,也歡迎與我們分享你是如何調整的。
你也可以參考本學習方法的迷你版——《 信息圖表:Python數據科學學習之快速入門》。
開始這段學習旅程之前,第一個要回答的問題是:為什麼使用Python?或者,Python怎樣使用才有效?
請觀看Data Robot創始人Jeremy 2014年在烏克蘭的PyCon大會上的前30分鐘的演講,來了解Python是多麼的奇妙。
第一步設置機器環境
既然你已經下定了決心,就開始設置機器環境吧。 最簡單的方法就是在Continuum.io下載分發包Anaconda。 這裡材料應有盡有,美中不足就是即使在數據庫提供了可用的更新資源時,你也要等Continuum自行更新。 不過如果你是初學者的話,這點就無關緊要了。
如果你在安裝過程中遇到任何問題,你可以在這裡找到不同操作系統下更詳細的安裝說明。
第二步學習Python語言基礎
首先你要理解語言、數據庫和數據結構的基礎知識。 Codecademy 上的Python課程是這段學習之路的最佳起點。 課程結束時,用Python寫計算機腳本、理解類和對像這些對你來說應該早就駕輕就熟了
學習重點:列表Lists,元組Tuples,字典Dictionaries,列表推導式,字典推導式。
學習任務:解決HackerRank上的一些Python教程題,這些題能讓你更好的用Python腳本的方式去思考問題。
替代資源:如果交互式編碼不是你的風格,可以參考谷歌的Python課程,這個兩天的系列課程還涵蓋了接下來要討論的一些內容。
第三步學習Python正則表達式
進行數據清理經常需要使用正則表達式,處理文本數據時尤其如此。 學習正則表達式的最佳方式就是完成谷歌課程,cheat sheet會讓你使用正則表達式變得更加便捷熟練。
學習任務:做關於兒童名字的正則表達式練習
如果你仍需要更多練習,請參考文本整理的教程,它會鍛煉你對處理數據的各個步驟的把握能力。
第四步學習Python科學數據庫——NumPy, SciPy, Matplotlib和Pandas有趣之處由此開始!
下面是對各種數據庫的一一介紹,讓我們開始練習一些簡單操作吧。
●系統練習NumPy 教程,尤其要練習arrays數組。 這會為你接下來的學習打下良好的基礎。
●接下來了解一下SciPy教程。 瀏覽一下SciPy介紹和基本知識之後,學習其餘你需要的部分。
●如果你猜這一步要講Matplotlib教程——那就大錯特錯了。 Matplotlib教程對我們目前的階段來說綜合性太強,這裡我們推薦閱讀ipython notebook前68行(就是到動畫這一部分)。
●最後,讓我們了解下Pandas。 Pandas為Python提供DataFrame功能(類R語言),這也是值得你認真花時間練習的地方。 Pandas有可能成為所有中型數據分析中最有效的工具。 先看一下簡單介紹《十分鐘走近Pandas》(10 minutes to pandas),然後再轉入Pandas教程的詳細學習。
你也可以參考《Pandas探索性數據分析》(Exploratory Data Analysis with Pandas)和《Pandas數據處理》(Data munging with Pandas)裡的內容。
其他資源:
●如果你需要有關Pandas和NumPy的書籍,Wes McKinney 寫的《運用Python的數據分析》值得一讀。
●有關Pandas文檔的教程也有很多。
學習任務:完成哈佛CS109的課程作業。
第五步有效的數據可視化
學習CS109課程時,前兩分鐘可以忽略不看,不過後面的內容相當精彩!推薦結合作業學習本課程。
第六步學習Scikit-learn庫,完成機器學習內容
現在,我們開始接觸整個過程中最重要的部分了。 Scikit-learn是機器學習領域最有用的Python數據庫,在這裡你可以查看數據庫的概覽。 參考學習哈佛CS109課程第十節到第十八節課,你將能一覽機器學習,回歸、決策樹方法、集成建模等監督算法,以及聚類算法等非監督式算法。 可以參考上述課程的作業來規劃自己的學習課程。
其他資源:
●如果說有哪本書可以作為必讀書的話,推薦《集體智能編程》(Programming Collective Intelligence)—— 一部該領域的經典好書。 ●此外,你也可以學習Yaser Abu-Mostafa中機器學習課程中的一些優秀課程。 如果你希望獲得對技能更加深入淺出的解讀,可以選擇Andrew Ng的機器學習課程,並做一些有關Python的練習。
●Scikit learn的教程。
學習任務:嘗試Kaggle上的挑戰。
第七步練習,練習,再練習
恭喜你,你成功地完成了整個學神之路啦!
你現在已經具備了一切所需的技術技能,現在就是練習的事情了,還有比在Kaggle上與同行數據科學家切磋更好的方式麼?那就出發吧,全身心投入到一個Kaggle的直播比賽中,傾盡所學放手一試吧!(在公眾號裡回复“學神之路”即可下載。)
第八步深度學習
現在你已經學習了大部分的機器學習技能,也是時候嘗試一下深度學習了。 你很有可能已經知道了深度學習的含義,當然我也可以給你們一個簡單的介紹。
不過我對深度學習也不是特別了解,所以你在採納這些建議時可以有所保留:deeplearning.net上有深度學習方面最全面的資源,你會發現這裡應有盡有—— 課程、數據集、挑戰、各種教程等;或者你也可以嘗試Geoff Hinton的課程來試著理解神經網絡(Neural Networks)的基礎知識。
via:燈塔大數據
End.
轉貼自: 36大數據
留下你的回應
以訪客張貼回應