283
Python
Python做數據分析-簡潔、易讀、強大
使用過Python的用戶都會被其簡潔、易讀、強大的庫所折服,其pythonic語言特性,對人極其友好,可以說,一個完全不懂編程語言的人,看懂python語言也不是難事。
在數據分析和交互、探索性計算以及數據可視化等方麵,相對於R、MATLAB、SAS、Stata等工具,Python都有其優勢。近年來,由於Python庫的不斷發展(如pandas),使其在數據挖掘領域嶄露頭角。結合其在通用編程方麵的強大實力,我們完全可以隻使用Python這一種語言去構建以數據為中心的應用程序。
由於python是一種解釋性語言,大部分編譯型語言都要比python代碼運行速度快,有些同學就因此鄙視python。但是python是一門高級語言,其生產效率更高,時間通常比CPU的時間值錢,因此為了權衡利弊,考慮用python是值得的。
Python強大的計算能力依賴於其豐富而強大的庫:
Numpy
Numerical Python的簡稱,是Python科學計算的基礎包。其功能:
1.快速高效的多維數組對象ndarray。
2.用於對數組執行元素級計算以及直接對數組執行數學運算的函數。
3.線性代數運算、傅裏葉變換,以及隨機數生成。
4.用於將C、C++、Fortran代碼集成到Python的工具。
除了為Python提供快速的數組處理能力,NumPy在數據分析方麵還有另外一個主要作用,即作為在算法之間傳遞數據的容器。對於數值型數據,NumPy數組在存儲和處理數據時要比內置的Python數據結構高效得多。此外,由低級語言(比如C和Fortran)編寫的庫可以直接操作NumPy數組中的數據,無需進行任何數據複製工作。
SciPy
是一組專門解決科學計算中各種標準問題域的包的集合,主要包括下麵這些包:
1. scipy.integrate:數值積分例程和微分方程求解器。
2. scipy.linalg:擴展了由numpy.linalg提供的線性代數例程和矩陣分解功能。
3. scipy.optimize:函數優化器(最小化器)以及根查找算法。
4. scipy.signal:信號處理工具。
5. scipy.sparse:稀疏矩陣和稀疏線性係統求解器。
6. scipy.special:SPECFUN(這是一個實現了許多常用數學函數(如伽瑪函數)的Fortran庫)的包裝器。
7. scipy.stats:標準連續和離散概率分布(如密度函數、采樣器、連續分布函數等)、各種統計檢驗方法,以及更好的描述統計法。
8. scipy.weave:利用內聯C++代碼加速數組計算的工具。
注:NumPy跟SciPy的有機結合完全可以替代MATLAB的計算功能(包括其插件工具箱)。
SymPy
是python的數學符號計算庫,用它可以進行數學表達式的符號推導和演算。
pandas
提供了使我們能夠快速便捷地處理結構化數據的大量數據結構和函數。你很快就會發現,它是使Python成為強大而高效的數據分析環境的重要因素之一。
pandas兼具NumPy高性能的數組計算功能以及電子表格和關係型數據庫(如SQL)靈活的數據處理功能。它提供了複雜精細的索引功能,以便更為便捷地完成重塑、切片和切塊、聚合以及選取數據子集等操作。
對於使用R語言進行統計計算的用戶,肯定不會對DataFrame這個名字感到陌生,因為它源自於R的data.frame對象。但是這兩個對象並不相同。R的data.frame對象所提供的功能隻是DataFrame對象所提供的功能的一個子集。也就是說pandas的DataFrame功能比R的data.frame功能更強大。
matplotlib
是最流行的用於繪製數據圖表的Python庫。它最初由John D. Hunter(JDH)創建,目前由一個龐大的開發人員團隊維護。它非常適合創建出版物上用的圖表。它跟IPython(馬上就會講到)結合得很好,因而提供了一種非常好用的交互式數據繪圖環境。繪製的圖表也是交互式的,你可以利用繪圖窗口中的工具欄放大圖表中的某個區域或對整個圖表進行平移瀏覽。
TVTK
是python數據三維可視化庫,是一套功能十分強大的三維數據可視化庫,它提供了Python風格的API,並支持Trait屬性(由於Python是動態編程語言,其變量沒有類型,這種靈活性有助於快速開發,但是也有缺點。而Trait庫可以為對象的屬性添加檢校功能,從而提高程序的可讀性,降低出錯率。) 和NumPy數組。此庫非常龐大,因此開發公司提供了一個查詢文檔,用戶可以通過下麵語句運行它:
>>> tvtk_doc.main()
Scikit-Learn
是基於python的機器學習庫,建立在NumPy、SciPy和matplotlib基礎上,操作簡單、高效的數據挖掘和數據分析。其文檔、實例都比較齊全。
11月4-7日北京Python數據分析與機器學習現場班(Gino老師主講)
通過對數據分析工作中遇到的典型數據分析和挖掘案例進行深刻地分析,快速掌握Python 數據分析和數據挖掘(含機器學習)的思想和方法,形成科學有效的知識和能力結構體係框架,為提升工作中的數據分析能力打下良好的基礎。
培訓時間:2017年11月4-7日 (四天)
培訓地點:北京市海澱區廠窪街3號丹龍大廈
授課安排:上午9:00至12:00; 下午1:30至4:30; 答疑
培訓費用:4200元 / 3600元 (僅限全日製本科生及碩士研究生優惠價);食宿自理
特別贈送:Python爬蟲視頻(課程講師錄製)
講師介紹:
Gino:早年獲得名校數學與計算機專業學士和統計學專業碩士,近20年來一直進行著數據分析的理論和實踐,數學、統計和計算機功底強悍。為人低調謙和,講課富於激情和感染力。
他在高校擔任過數學、計算機和統計學老師,也曾在某一世界500強公司核心部門擔任高級主管負責數據建模和分析工作,在實踐中攻克統計建模和數據分析難題無數,數據處理與分析科學精準,在實際應用中取得良好的預期效果。
他至今培訓了來自高校、研究所、國外和各行各業的上千名學員,每一次培訓都好評如潮。來自學術和業界的學員均在培訓中受益頗多。
Bob:早年計算機專業科班出身,功底深厚,較早的認識Python的價值和強大的功能,多年來一直使用Python進行數據分析的工作,並且使用Python開發多個數據挖掘及信息係統的項目,積累了豐富的經驗。也是國內較早的進行Python培訓的講師之一,在湖廣等地幫助很多人通過掌握Python找到了滿意的工作。培訓中講解的案例實用,全部來自開發實際,含金量高,以前學員認識到其價值後強烈要求加課進一步學習。
適用人群:
1.急需入門數據挖掘和建模,想使用Python從事數據分析有關工作;即將或已經在數據分析或機器學習崗位工作的人;
2.想在實際數據分析工作中進一步提升技能,短時間內獲取數據分析和挖掘工作經驗的人。
課程特色:
1.全程沒有艱深的公式,幾乎全部以實際案例帶動啟發理解,以通俗易懂的語言講清楚深刻的數據分析和機器學習算法思想,隨時互動、答疑解惑;
2.注重學以致用、注重應用場景再現。抓住工作中經典的數據分析模型和案例加以剖析,使得學員在實際工作中很快能上手進行實際問題的解決;
3.注重實際工作經驗分享,讓學員在工作學習中少走彎路,以培養興趣為引導、以闡明基本原理思想為基礎,讓學員掌握數據分析工作中的關鍵環節和技術。
課程大綱:
第1天: Python 基礎精要(初中級別, 整個課程的基礎)
一,Python數據分析基礎
1、Python語法初步:主要是代碼編寫規範,變量的、標識符的學習,注釋的一些說明。
1)變量要求,容易出錯的命名方式。
2)代碼的規範要求。
3)代碼的注釋操作和注釋文檔
4)變量的賦值和Python 腳本文件的編碼要求。
2、Python數字和內置對象
1) python的交互式操作.raw_input與input的區別
2) python內置對象:type,cmp,repr,str,isinstance,xrange,None與NULL等
3)數字與字符的計算和邏輯運算,及數字精度的注意事項。
3、Python元組
1)元組的特性
2)元組的初始化、刪除、增加、修改、替換
3)元組的切片及相關的內建函數
4、Python列表和字符串
1)列表與字符串的特性
2)列表與字符串的初始化、刪除、增加、修改、替換
3)字符的格式化操作
4)列表與字符的切片操作及相關的內建函數
5)特殊的字符及字符的編碼與解碼
5、Python集合與字典
1)字典的特性
2)字典的初始化、刪除、增加、修改、替換
3)映射類型的操作及相關的內建函數
6、Python語法:條件和循環
1)條件分支語句的用法及注意事項
2) While循環語句的用法
3) For語句,range與xrange函數的用法
4) Break與continue,pass、else的運用
5)迭代器與iter函數
7、文件操作
1) File和open函數及其參數的學習
2)文件目錄操作
3)文件內容的操作
8、錯誤和異常的處理
1)錯誤與異常的區別
2) Try-except-finally語法講解
3)斷言,觸發異常
4)常用的異常,及自定義異常
9、模塊、包
1)搜索路徑及命名空間
2) import與from-import語法
3)包的講解
10、函數
1)函數的講解
2)函數參數
3)函數編程:lambda,匿名函數
4)內建函數apply,filter,map,reduce
5)變量作用域:globa,閉包,命名空間
6)遞歸
7)生成器
11、麵向對象編程
1)類的定義、屬性和實例化
2)類的組合、繼承
3)類的方法調用和修飾符
4)類的內建函數
二、Python進階:
1、 Python中鏈表、棧的實現和操作
2、 Python中二叉樹的實現和操作
3、 Python中簡單排序算法、快速排序和歸並排序的實現和操作
三、正則表達式
1、 正則表達式使用的字符講解
2、 正則表達式的應用:匹配模式,編譯形式,分割和替換
3、 Re模塊的講解
四、Python應用:
1)模擬實現ATM機取錢
2)冒泡算法和二分查找
3)模擬海關
4)蒙特洛模擬
第2天: 使用numpy、pandas等進行數據清洗和整理,充分統計分析數據(數據分析和挖掘前最重要的工作,直接決定了建模分析的質量,往往也是最耗時的工作)
一、Numpy基礎:
1、Numpy語法初步:主要是認識和掌握Numpy的基本語法和操作
1) Numpy的數組
2) Numpy的數組的索引和切片操作
3) Numpy的通用函數
4) Numpy的數據處理
5) Numpy的對文件的操作
2、Numpy實例
通過模擬隨機漫步來說明如何運用數組運算,讓學員深刻認識Numpy
二、Pandas基礎:
1、Pandas基礎知識
1) Pandas的數據結構series和DataFrame
2) Pandas的索引、選取和過慮。
3) Pandas的排序和匯總統計
4) Pandas處理缺失的數據
2、Pandas數據的規整化
1) Pandas合並、清理數據集
2) Pandas連接數據集
3) Pandas移除重複、值替換和映射轉換數據集
4)檢測及過慮異常值
5)排列和隨機采樣
6) Pandas的字符串操作
3、Pandas數據的聚合與分組
1) Pandas的對數據分組操作
2) Pandas的對數據聚合操作
3) Pandas的交叉和透視表的應用
4、Pandas對時間序列的處理
1) Pandas的時間序列基礎
2) Pandas的時間序列初始化和偏移運算
3) Pandas的時間頻率處理及日期的移動
4) Pandas重采樣
5、Pandas數據加載與存儲
1)讀寫文本格式的數據
2) Pandas使用json數據
3) Pandas讀寫數據庫
6、Pandas的案例實操作
1)大學考試成績統計數據分析
2) Python就業數據分析
3)電影市場的分析
4)股票的交易分析
5)智慧水務的水質數據分析
6)上市公司的財務分析
第3天和第4天:Python機器學習算法和數據挖掘案例精要(根據學員在工作中遇到的各種經典的機器學習算法和實際常見案例進行分析,幫助大家快速上手、學以致用)
目標:
1.掌握機器學習分類的各種方法(決策樹、樸素貝葉斯、隨機森林、支持向量機、神經網絡等)和經典案例
2.掌握文本分類實際案例
3.掌握推薦係統的機器學習
4.選擇正確的方法和模型
5.掌握特征選擇和特征工程
項目:
1.垃圾短信或郵件的識別與分類(Logistic回歸)
2.使用隨機森林進行預測
3.圖像識別和預測的方法和應用
4.利用樸素貝葉斯進行文本分類(含算法和TF-IDF策略)
5. kaggle神器XGBoost 應用案例
6. Titanic災難事件的機器學習各種算法分析比較
7. iris數據集機器學習分類方法的比較
8.推薦係統構建方法
9.網頁廣告圖片屏蔽器
10.支持向量機算法原理和應用場景
11.客戶畫像和精準營銷
12.網站文本挖掘
13.手寫識別
14.最近鄰(kNN)算法及其案例
15.使用PCA方法進行降維
16. k-means聚類等應用實例
17.購物籃分析
18. Python機器學習量化投資實例
優惠:
現場班老學員9折優惠;
同一單位3人以上同時報名9折優惠;
折扣優惠不疊加。
報名流程:
最後更新:2017-10-12 13:21:50