擅用Python,強推這 7 種 神兵利器!
君子生非異也,善假於物也。
“物”能夠延展英雄的能力。它是呂布的赤兔馬,楊過的玄鐵重劍,CS中的沙漠之。鷹,曹操傳中的鳳凰羽衣。“物”也可用以治癒英雄,例如張無忌的黑玉斷續膏,李逍遙的天香續命露,還有深夜裡TVB的一碗麵。
對於不同的位面,有著不同的寶物定義。對古時文人來講,筆墨紙硯,是當時具有生產力輸出的四大工具。對程式設計師來講,當代的“文房四寶”不外乎是:筆 記本,大螢幕,機械鍵盤,人體工學椅,Google,Github這幾種。特別是機械鍵盤和人體工學椅,它們是極為重要的“人機介面”。前者可以用來延展 英雄的輸出能力,後者可以用來治癒英雄的腰椎。
在資料領域也有類似的情況。一個資料專案,最重要的是定義問題,其次是拿到好的資料,再次是找到合適的方法,最不重要的可能就是選擇一個工具了。但是看起來最形而下的工具,卻是最具體而真實的“人數介面”。用一種順手的工具來玩資料,我們會覺得比較舒服,輸出效率更高。
市面上的分析工具大致分為兩大類,選單式的工具和命令列式的工具。前者適合於初學入門,類似於跟團旅遊,提供了固定的路線。分析套路比較固定化,點 幾下滑鼠就可以搞定也很省事。後者適合於老手玩家,類似於自由行,需要自己規劃資料工作流,適用於自定義的靈活分析。大多數使用者害怕命令列,然而使用命令 行才能掌握真正的力量。命令列是Jedi的原力。
在命令列工具類別中,最耀眼的是R和Python這對雙星。他們有非常多的相似之處,第一個相似之處是“快”。這種快不是純計算速度快,而是從想法 到結果的快。因為不論是探索資料還是建模,都需要各種嘗試各種試錯各種踩坑,如果要花2小時寫程式碼,跑1分鐘,不如花1分鐘寫程式,跑1小時。因為人的時 間總是更為寶貴。第二個相似之處是擴充套件豐富。即有大量現成的函式模組。從想法到結果的快速實現,不能等待重新造輪子,另一方面,試錯也要做很多複雜的自定 義任務,將各種模組進行組合,呼叫各種外部互動介面,這兩種開源工具都非常擅長。
二者的差異點在於Python是一種通用型程式設計工具,R專注於資料領域;R有更為豐富的專業統計函式,Python則長於機器學習;R有更好的可視 化包,Python正在快速追趕;Python和R的核心語法非常簡潔,一些R包的語法則兼收幷蓄,錯綜複雜。當你有時間的時候,雙修是最好的選擇。因為 這兩種工具類似於筷子和勺子的區別,在不同場景下使用某種工具更為有效。
R語言這個工具與其生態系統,在統計之都上已經介紹得非常多了。下文簡單介紹一下python的七個最為重要的資料分析模組,或者稱之為七種武器。
長生劍:Numpy
Numpy是Python提供數值計算的基礎模組,也是Python生態中歷史最為悠久的模組,可稱得上“長生”二字。如果沒有這柄長生劍,就沒有 辦法做快速高效的向量化計算。它還提供了線性代數等高階矩陣運算功能,另外還能整合C的程式碼,讓你出劍更加的快。Python的許多擴充套件模組都是基於 Numpy開發的,所以學好Numpy就算是奠定好了根基。
碧玉刀:SciPy
SciPy是基於Numpy開發的高階模組,它用於解決科學計算中的一些標準問題。例如數值積分和微分方程求解,擴充套件的矩陣計算,最優化,概率分佈和統計函式,甚至包括訊號處理。練習好碧玉刀和長生劍,就足以解決常見的計算問題,並不需要自己哼哧哼哧造輪子寫函式了。
孔雀翎:Matplotlib
孔雀的尾羽聚合了世間所有的色彩,做資料研究同樣需要漂亮的視覺化工具。Matplotlib是python下最著名的繪相簿,提供了一整套和 Matlab相似的API,十分適合互動式繪圖。也可將它作為繪圖控制元件,嵌入各種應用程式中。在其基礎之上,還有更為有趣的繪圖工具Seaborn和 Bokeh。
多情環:Pandas
在資料整理階段,我們經常需要連線讀定不同型別的資料來源,處理不同格式的資料物件,如果只使用Numpy會很麻煩。Pandas使Python具備 了類似R的資料框物件。這樣方便用於真實江湖的資料處理和分析,它提供大量易用、高效的資料操作函式庫,能執行join以及其他SQL類似的功能來重塑數 據,支援各種格式的輸入輸出資料。它與Python生態中的其它模組也有很好的整合,多情環名不虛傳。
離別鉤:Statsmodels
Statsmodels是python中專門用於統計分析的模組,提供各種迴歸模型函式,包括廣義迴歸和穩健迴歸,還提供大量時間序列分析函式,例如ARIMA/VAR,各種經典假設檢驗和非引數方法一個都不少。有了離別鉤,你可以隨時和R說離別。
霸王槍:Scikit-learn
Scikit-learn是非常著名的機器學習庫,它提供一個統一的介面來使用不同模型,有助於迅速地在資料集上應用流行的演算法。它包含了許多用於 標準機器學習任務的工具,例如聚類、分類和迴歸等。不僅是各種演算法,機器學習中重要的特徵選擇和模型評估均在模組中包含了。值得一提的另一個模組 gensim:提供了詞向量、主題模型等函式。有了這兩種模組,天下就絕沒有不能解決的事。
一口箱子:TensorFlow
古龍並未寫完最後的第七種武器,通常會將《英雄無淚》中的一口箱子作為最為神祕最為強悍的終級武器。在Python生態中,一口箱子只能屬於 TensorFlow。它作為名門大派出品的深度學習框架,一出世就備受矚目。TensorFlow提供了C++和python兩種介面,讓你能高效的設 計各種機器學習演算法,並且能執行在各類硬體架構之上。此外還有各種強力元件搭配,TensorBoard用於監控學習過程中的各項參 數,TensorServer可用於生產環境的模型部署,甚至傳說還有TPU這種專門用於深度學習的晶片。
在資料江湖中,沒有順手的武器,英雄亦束手加班中。七種武器雖強,但器物總是死的,更重要的是從器物的把玩中,能領悟到運用之妙,資料之道。一件武 器是否能令讀者覺得神奇有價值,主要還是得看使用它的是什麼人。有赤兔的呂布沒有看到明天,沒有玄鐵重劍的楊過卻有更進一步的修煉。
江湖路遠,少俠們一路走好。
大家在學python的時候肯定會遇到很多難題,以及對於新技術的追求,這裡推薦一下我們的Python學習扣qun:784758214,這裡是python學習者聚集地!!同時,自己是一名高階python開發工程師,從基礎的python指令碼到web開發、爬蟲、django、資料探勘等,零基礎到專案實戰的資料都有整理。送給每一位python的小夥伴!每日分享一些學習的方法。和需要注意的小細節
點選: python技術分享交流
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69913713/viewspace-2650173/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- IT運維人員的神兵利器運維
- 老司機的神兵利器-效率工具
- 「神兵利器Dagger2 | 掘金技術徵文 」
- Android 神兵利器—— Adb 常用命令Android
- 好書推薦《資料血緣分析原理與實踐 》:資料治理神兵利器
- Android UI開發神兵利器之設計資源AndroidUI
- 如何加強網路安全這7種建議你不可不知!
- 1.17 另一個自定義的CVCalendar日曆 [iOS開發中的神兵利器]iOS
- python--各種推導式Python
- 2.15 自定義表單文字框內容的格式 [iOS開發中的神兵利器]iOS
- 強烈推薦的各種熱門好用的介面
- .NET 7 Preview 3新增了這些增強功能View
- 7種jvm垃圾回收器,這次全部搞懂JVM
- 強烈推薦Python新手學習之——字典Python
- 專訪ironSource:爭奪30億超休閒遊戲廣告市場,廣告創意成神兵利器遊戲
- 實用!7個強大的Python機器學習庫!⛵Python機器學習
- 推薦 7 個 Python 入門視訊教程Python
- 推薦7個Python上手實戰專案Python
- 自媒體工具有哪些?這幾款工具,強烈推薦
- python生成器和各種推導式Python
- python3 拼接字串的7種方法Python字串
- 推薦兩款HTTP請求Mock利器HTTPMock
- 這幾年火遍全世界的Python勢頭還這麼強?Python
- Python強制結束迴圈的5種方法!Python
- 【推薦】7個超好用的Python開發工具!Python
- SuperSpider——打造功能強大的爬蟲利器IDE爬蟲
- 放棄vlookup吧,這3種EXCEL多表關聯方法“強得很”Excel
- 7種常見且實用的Python框架!Python框架
- python中7種方法實現字串的拼接Python字串
- i7-8700K+GTX1070打造超強遊戲配置推薦遊戲
- find 命令這 7 種高階用法,你肯定沒用過?
- 微信如何同步到今日頭條?這一款工具強烈推薦!
- 做資料分析,推薦7款好用的Python工具!Python
- 程式碼生成利器:IDEA 強大的 Live TemplatesIdea
- Python爬蟲的框架有哪些?推薦這五個!Python爬蟲框架
- Python那麼火,我只推薦這兩本書Python
- 強烈推薦:GitHub 上 13 個 Python 學習資源|Python 主題月GithubPython
- 強化學習-學習筆記7 | Sarsa演算法原理與推導強化學習筆記演算法