零基礎學習Python數據分析
使用Python進行數據挖掘是最近幾年才開始火起來的,之前網上很多的資料都是關於Python網頁開發等。但使用Python進行數據挖掘的側重點已經完成不一樣了。本人就是浪費了很多時間來篩選這些博客、書籍。所以就有了本文,希望能幫大家少走一點彎路。
----------我是分割線--------
本文章主要從數據挖掘的角度出發, 講講如何零基礎學習Python語法、數據清洗、以及數據建模。本文不能保證你能成為大神,但是如果能踏踏實實地學習完,找一份年薪15w+的工作還是不太難的。本人也是非計算機專業,所以希望給非計算機的人一點參考,大神請繞道。
熟練掌握任何一門語言,幾乎都需要經過以下過程:
- 良師--學習Python課程+入門書籍+瀏覽技術博客
- 社區幫助--善於使用搜索引擎、Mail List
- 益友 -- 尋找學習夥伴
- Learn by Code --項目實踐
一、Python學習課程推薦
這兩個學習課程從最基礎的Python語法開始,介紹了Python數據分析、統計模型以及機器學習的各個方面,內容十分充足。之所以建議使用老外的課程是因為,老外上課假定你什麼都不會,講解深入淺出,尤其是對於華盛頓大學的機器學習課程,把複雜的概念講解得十分簡單。
1. 密歇根大學的《學習使用Python編程並分析數據》主要包括以下課程(講解十分詳細,深入淺出,非常適合入門學習,視頻都是有字幕的):
- 《大家的編程 (Python 入門》:課程涵蓋了如何使用Python的基本指令編寫程序. 課程對學生沒有先設要求, 我們只涉及到最基本的數學, 有一定使用電腦經驗的人都可以完全掌握這門課的內容.
- 《Python 數據結構》:本課程將介紹Python編程語言的核心數據結構。我們將學習編程語言的基礎概念,探索如何使用Python的內置數據結構,如列表、字典、元組,進行更為複雜的數據分析。
- 《使用 Python 訪問網路數據》:使用Python爬取和解析網路數據
- 《Python 資料庫開發》:使用Python和資料庫進行交互
- 《使用 Python 獲取並處理數據,並用可視化方式展現數據》
2. 華盛頓大學的《機器學習》專項課程
在專項課程頁面無法選擇旁聽,必須點擊進入單獨課程頁面才可,這個課程專題旁聽是有限制的,無法提交作業;如有需求,可以申請獎學金,回答三個問題即可,系統自動通過申請。
- 《機器學習基礎:案例研究》:你是否好奇數據可以告訴你什麼?你是否想在關於機器學習促進商業的核心方式上有深層次的理解?你是否想能同專家們討論關於回歸,分類,深度學習以及推薦系統的一切?在這門課上,你將會通過一系列實際案例學習來獲取實踐經歷。
- 《機器學習:回歸》
- 《機器學習:分類》
- 《機器學習:聚類和檢索》
- 《機器學習:推薦系統和降維》
- 《機器學習:應用深度學習創建智能運用》
二、網上打碼教程
Learn by doing!!! 學習編程最有效的方式就是敲代碼!
- Codecademy 圍繞Python 的基礎語法,內容非常豐富。
- Datacamp Python基本語法(他家的R語言課程十分不錯!)
三、Python技術博客
簡單介紹一些非常棒的Python技術學習的博客
1. 廖雪峰Python教程 簡單易上手的Python基礎語法教程,值得學習, Python 2和Python 3版本都有。
2. 非常棒的pandas練習Github Repo
3. 很詳細的Python 爬蟲教程
4. 國外Data Science博客大全
四、Python入門書籍推薦
常用書籍下載網址,幾乎囊括了網上能找得到的所有Python相關的書籍(PDF、Epub和mo bi格式),且提供雲盤下載鏈接。你值得擁有!
python | 搜索結果
1. 掌握Python語法的基礎上學習《Python for data analysis》是比較不錯的選擇,涵蓋了ipython notebook、Numpy、Scipy和Pandas包的使用。
2.《Python數據分析與挖掘實戰》介紹了使用Python進行數據挖掘的詳細案例,數據和代碼都可以下載,作為機器學習的進階學習是不錯的選擇(這本書也用對應的R語言和Matlab 版本)。
3. 《Python Cookbook》很厚的一本書,可以作為Python語法查詢手冊。
再添加幾個外文書籍下載網址:
1. All IT eBooks 全,可能需要使用翻*牆下載,翻*牆方法見文末
2. Library Genesis 各種書籍,不局限於編程書籍
3. Fox eBook - eBooks Free Download Site
4. Development / Programming / AvaxHome
五、推薦訂閱博客(更細頻率較高)
iPhone上可以使用Reeder閱讀器,Instapaper用來保存後稍後閱讀,因為信息量比較大。
- No free Hunch Kaggle競賽平台的官方博客,包括一些優秀的代碼解讀以及高分選手的採訪,十分有用的經驗(來自不同背景,不同年齡層次,不同職業的選手)
- Flowing Data 十分有用的數據分析的案例
- Python日報 內容十分精彩的集錦(中文)
六、FAQ (待續)
- Python 2.x還是Python 3.x?
- 如何安裝Python包? 強烈推薦Anaconda包,你值得擁有!尤其是Windows系統。
- 網路速度慢,請翻*牆,安利一款免費好用Google開發的防屏蔽的梯子Lantern,速度不錯。
- 是否需要很強的統計和數學背景? 有良好的數學和統計背景固然很好,但是現在很多崗位對數學和統計背景要求並不很多,都是簡單的演算法,Python編程已經能夠很方便地實現,更多的是對業務的深入理解。如有需要建議,邊學習Python邊學習數學統計。
七、實踐項目
- Kaggle競賽項目,裡面不僅僅有很多競賽項目,而且有很多可供學習的代碼、博客以及論壇,都是實戰項目,有很強的實踐價值。
----------------------
中文的Python數據分析的教程較少,而且質量良莠不齊,所以推薦多為英文資料。而且隨著學習的深入,有時候只有英文資料可以借鑒。學習數據分析和機器學習,英文再好也不為過。並不是說中國沒有優秀的人才,而是為了便於國際交流學習,中國人也多用英語。
P.S.: 衷心感謝大家的讚賞,這是對我最大的肯定(網費有著落了)。
推薦閱讀:
※數據挖掘新手該如何開始這一領域?
※用戶畫像建模:方法與工具
※機器學習和數據挖掘在網路安全領域會有哪些應用?
※關於數據降維的諸多演算法,測試數據必須要和訓練數據一起運算么?
※混淆矩陣是什麼意思?