關于R的介紹
開源語言R,目的是專注于提供更好和更人性化的方式做數(shù)據(jù)分析蓬网、統(tǒng)計和圖形模型的語言螟碎。起初R主要是在學術和研究使用,但近來企業(yè)界發(fā)現(xiàn)R也很不錯鲸拥。這使得中的R成為企業(yè)中使用的全球發(fā)展最快的統(tǒng)計語言之一拐格。
R的主要優(yōu)勢是它有一個龐大的社區(qū),通過郵件列表刑赶,用戶貢獻的文檔和一個非衬笞牵活躍的堆棧溢出組提供支持。還有CRAN鏡像撞叨,一個用戶可以很簡單地創(chuàng)造的一個包含R包的知識庫金踪。這些包有R里面的函數(shù)和數(shù)據(jù),各地的鏡像都是R網(wǎng)站的備份文件牵敷,完全一樣胡岔,用戶可以可以選擇離你最近的鏡像訪問最新的技術和功能,而無需從頭開發(fā)枷餐。
如果你是一個有經(jīng)驗的程序員靶瘸,你可以不會覺得使用R可以提高效率,但是尖淘,你可能會發(fā)現(xiàn)學習R經(jīng)常會遇到瓶頸奕锌。幸運的是現(xiàn)在的資源很多。
關于Python的介紹
Python是由Guido van Rossem創(chuàng)建于1991年村生,并強調(diào)效率和代碼的可讀性惊暴。希望深入的數(shù)據(jù)分析或應用統(tǒng)計技術的程序員是Python的主要用戶。
當你越需要在工程環(huán)境中工作趁桃,你會越喜歡Python辽话。它是一種靈活的語言,在處理一些新東西上表現(xiàn)很好卫病,并且注重可讀性和簡單性油啤,它的學習曲線是比較低的。
和R類似蟀苛,Python也有包益咬,pypi是一個Python包的倉庫,里面有很多別人寫好的Python庫。
Python也是一個大社區(qū)帜平,但它是一個有點比較分散幽告,因為它是一個通用的語言梅鹦。然而,Python自稱他們在數(shù)據(jù)科學中更占優(yōu)勢地位:預期的增長冗锁,更新穎的科學數(shù)據(jù)應用的起源在這里齐唆。
R和Python:數(shù)字的比較
在網(wǎng)上可以經(jīng)常看到比較R和Python人氣的數(shù)字冻河,雖然這些數(shù)字往往就這兩種語言是如何在計算機科學的整體生態(tài)系統(tǒng)不斷發(fā)展箍邮,但是很難并列進行比較。主要的原因是叨叙,R僅在數(shù)據(jù)科學的環(huán)境中使用锭弊,而Python作為一種通用語言,被廣泛應用于許多領域擂错,如網(wǎng)絡的發(fā)展廷蓉。這往往導致排名結果偏向于Python,而且從業(yè)者工資會較低马昙。
如果你看一下最近的民意調(diào)查,在數(shù)據(jù)分析的編程語言方面刹悴,R是明顯的贏家行楞。
有越來越多的人從研發(fā)轉向Python。此外土匀,有越來越多的公司使用這兩種語言來進行組合子房。
如果你打算從事數(shù)據(jù)行業(yè),你用好學會這兩種語言就轧。招聘趨勢顯示這兩個技能的需求日益增加证杭,而工資遠高于平均水平。
R:優(yōu)點和缺點
優(yōu)點
可視化能力強
可視化通常讓我們更有效地理解數(shù)字本身妒御。R和可視化是絕配解愤。一些必看的可視化軟件包是ggplot2,ggvis乎莉,googleVis和rCharts送讲。
完善的生態(tài)系統(tǒng)
R具有活躍的社區(qū)和一個豐富的生態(tài)系統(tǒng)。R包在CRAN惋啃,Bioconductor的和Github上哼鬓。您可以通過Rdocumentation搜索所有的R包。
用于數(shù)據(jù)科學
R由統(tǒng)計學家開發(fā)边灭,他們可以通過R代碼和包交流想法和概念异希,你不一定需要有計算機背景。此外企業(yè)界也越來越接受R绒瘦。
缺點
R比較緩慢
R使統(tǒng)計人員的更輕松称簿,但你電腦的運行速度可能很慢扣癣。雖然R的體驗是緩慢的,但是有多個包來提高的r性能:pqR,renjin予跌,F(xiàn)astR, Riposte 等等搏色。
R不容易深入學習
R學習起來并不容易,特別是如果你要從GUI來進行統(tǒng)計分析券册。如果你不熟悉它频轿,即使發(fā)現(xiàn)包可能會非常耗時。
Python:優(yōu)點和缺點
優(yōu)點
IPython Notebook
IPython Notebook使我們更容易使用Python進行數(shù)據(jù)工作烁焙,你可以輕松地與同事共享Notebook航邢,而無需他們安裝任何東西。這大大減少了組織代碼骄蝇,輸出和注釋文件的開銷膳殷。可以花更多的時間做實際的工作九火。
通用語言
Python是一種通用的語言赚窃,容易和直觀。在學習上會比較容易岔激,它可以加快你寫一個程序的速度勒极。此外,Python測試框架是一個內(nèi)置的虑鼎,這樣可以保證你的代碼是可重復使用和可靠的辱匿。
一個多用途的語言
Python把不同背景的人集合在一起。作為一種常見的炫彩、容易理解匾七,大部分程序員都懂的,可以很容易地和統(tǒng)計學家溝通江兢,你可以使用一個簡單的工具就把你每一個工作伙伴都整合起來昨忆。
缺點
可視化
可視化是選擇數(shù)據(jù)分析軟件的一個重要的標準。雖然Python有一些不錯的可視化庫杉允,如Seaborn扔嵌,Bokeh和Pygal。但相比于R夺颤,呈現(xiàn)的結果并不總是那么順眼痢缎。
是不是大家猶豫了,不知道自己該學習什么呢:
大家作為一個數(shù)據(jù)工作者世澜,你需要在工作中選擇最適合需要的語言独旷。在學習之前問清楚自己:
你想解決什么問題就可以了。
學好python你需要一個良好的環(huán)境,一個優(yōu)質(zhì)的開發(fā)交流群嵌洼,群里都是那種相互幫助的人才是可以的案疲,我有建立一個python學習交流群,在群里我們相互幫助麻养,相互關心褐啡,相互分享內(nèi)容,這樣出問題幫助你的人就比較多鳖昌,群號是301备畦,還有056,最后是051许昨,這樣就可以找到大神聚合的群懂盐,如果你只愿意別人幫助你,不愿意分享或者幫助別人糕档,那就請不要加了莉恼,你把你會的告訴別人這是一種分享。
學習是對自己最好的投資速那,而機會屬于有準備的人俐银,這是一個看臉的時代,但最終拼的是實力端仰。人和人之間的差距不在于智商悉患,而在于如何利用業(yè)余時間,所以沒有等出來的輝煌榆俺,只有干出來的精彩。其實只要你想學習坞淮,什么時候開始都不晚茴晋,不要擔心這擔心那,你只需努力回窘,剩下的交給時間诺擅,而你之所以還沒有變強,只因你還不夠努力啡直,要記得付出不亞于任何人的努力烁涌。