熱線電話:13121318867

登錄
首頁精彩閱讀Python和R語言的區別
Python和R語言的區別
2018-03-03
收藏

Python和R語言的區別

數據挖掘技術日趨成熟和復雜,隨著互聯網發展以及大批海量數據的到來,之前傳統的依靠spss、SAS等可視化工具實現數據挖掘建模已經越來越不能滿足日常需求,依據美國對數據科學家(data scientist)的要求,想成為一名真正的數據科學家,編程實現算法以及編程實現建模已經是必要條件;目前很多從事數據挖掘工作的人,大多都是出身非計算機專業,本身對編程基礎比較低,所以找到一門快速上手而又高效的編程語言是至關重要的,好的工具和編程語言可以起到事半功倍的效果。

目前在數據挖掘算法方面用的最多的編程語言有:Java、C++、C、Python、R等等 

由于筆者本身屬于數理統計出身,復雜而高級的語言對我來說性價比并不高,所以想從頭對Java、C++、C開始學起,浪費的時間和精力與收獲明顯不成正比。所以Python和R語言成了最佳選擇。對于同樣和我背景相似的數據從業人員,我強烈推薦從這兩者選擇其一。

原因有三:
第一:Python和R本身在數據分析和數據挖掘方面都有比較專業和全面的模塊,很多常用的功能,比如矩陣運算、向量運算等都有比較高級的用法,所以使用起來產出比大;

第二:這兩門語言對于平臺方面適用性比較廣,linux、window都可以使用,并且代碼可移植性還算不錯的。

第三:對于學數理統計的人來說,應該大多用過MATLAB以及mintab等工具,Python和R比較貼近這些常用的數學工具,使用起來有種親切感

至于Python和R兩者如何選擇,本人有點粗淺認識:

這兩個工具都很方便,不需要非常高深的編程能力,都適合算法開發,有大量的package供你使用。 

Python入門簡單,而R則相對比較難一些(純個人感覺,依據每個人之前的經驗,可能不同的體驗)。
      R做文本挖掘現在還有點弱,當然它的優點在于函數都給你寫好了,你只需要知道參數的形式就行了,有時候即使參數形式不對,R也能“智能地”幫你適應。這種簡單的軟件適合想要專注于業務的人。
Python幾乎都可以做,函數比R多,比R快。它是一門語言,R更像是一種軟件,所以python更能開發出flexible的算法。

Python適合處理大量數據,而R則在這方面有很多力不從心,當然這么說的前提是對于編程基礎比較一般的童鞋,對于大牛來說,多靈活運用矢量化編程的話,R的速度也不會太差。

論性能,Python介于C/C++/Java這些高級語言與R語言之間,雖然性能不及那些高級語言,但是一般日常的數據用Python基本都能實現,對于性能要求不挑剔的人來說,足夠了

python 你需要安裝numpy,pandas,scipy,cython,statsmodels,matplotlib 等一系列的程序包,還需要安裝ipython交互環境,單獨用python直接做計量分析統計函數是沒有函數支持的;R是基于統計分析的,性能和效率上要略遜于python。R的優勢在于統計學和數據計算和分析上要優越于python。

Python語言編程的代碼可讀性高,整體美觀,屬于簡單粗暴性質的,短時間內少量代碼可實現復雜功能;R的語法很奇怪,各種包并不遵守語法規范,導致使用起來經常感覺蛋疼;R程序最終看起來沒有Python那么簡潔美觀。

從全面性方面,我認為Python的確勝過R。無論是對其他語言的調用,和數據源的連接、讀取,對系統的操作,還是正則表達和文字處理,Python都有著明顯優勢。畢竟,python本身是作為一門計算機編程語言出現的,而R本身只是源于統計計算。所以從語言的全面性來說,兩者差異顯著。

python是machine learning領域的人用的較多。據我所知,做marketing research, econometrics, statistics的人幾乎沒有用python
當然了,現在學編程比以前可簡單了多了。有句話不是這么說的么,“我不生產代碼,我只是stackoverflow的搬運工”。。。
以上僅僅是個人感悟,如表述不當,歡迎指出,拍磚的手下留情哦


數據分析咨詢請掃描二維碼

若不方便掃碼,搜微信號:CDAshujufenxi

數據分析師資訊
更多

OK
客服在線
立即咨詢
日韩人妻系列无码专区视频,先锋高清无码,无码免费视欧非,国精产品一区一区三区无码
客服在線
立即咨詢