在2016年P(guān)ython還是第二位(主要用Python的人占34%,主要用R語言的人占42%),在2017年P(guān)ython就以5%的優(yōu)勢領(lǐng)先于R語言(主要用Python的人占41%,主要用R語言的人占36%)。同時用Python和R兩種語言的人也從2016年的8 5%增長到12%了,而用其他語言的人則從16%降到11%。
之前我們在kdnuggets上做了這樣一個問卷調(diào)查,2016、2017兩年,在分析、數(shù)據(jù)科學(xué)和機器學(xué)習(xí)的工作中,你用R語言,還是Python,或兩者都用,或選擇其他的語言?
通過分析954個回答,我們得出了這樣的結(jié)論: 雖然Python并沒有完全取代R語言,但在2017年,Python已經(jīng)成功打敗R語言,成為分析、數(shù)據(jù)科學(xué)和機器學(xué)習(xí)平臺中使用頻率最高的語言。
在2016年P(guān)ython還是第二位(主要用Python的人占34%,主要用R語言的人占42%),在2017年P(guān)ython就以5%的優(yōu)勢領(lǐng)先于R語言(主要用Python的人占41%,主要用R語言的人占36%)。同時用Python和R兩種語言的人也從2016年的8.5%增長到12%了,而用其他語言的人則從16%降到11%。
圖1:2016-2017年,在分析、數(shù)據(jù)科學(xué)和機器學(xué)習(xí)中使用Python、R語言、Python和R語言、其他語言的占比
之后,我們分析了大家在不同語言之間的轉(zhuǎn)換情況。
圖2:2016-2017年,分析、數(shù)據(jù)科學(xué)以及機器學(xué)習(xí)平臺中各種語言的轉(zhuǎn)換情況
這張圖看起來很復(fù)雜,不過從中可以很容易地看出Python在忠誠度和轉(zhuǎn)換率兩個關(guān)鍵層面都領(lǐng)先于其他語言。
忠誠度:使用Python的用戶對它的忠誠度要高于使用其他語言的用戶。2016年使用Python的用戶中,有91%的人2017年還在繼續(xù)使用它,而R語言的用戶留存率為74%,其他語言的用戶留存率則為60%。
轉(zhuǎn)換率:從2016年到2017年,只有5%的Python用戶轉(zhuǎn)向R語言,而R語言用戶轉(zhuǎn)向Python的則是10%,這是前者的兩倍。另外,2016年同時使用兩種語言的人中,只有49%的人還在繼續(xù)使用這兩種語言,38%的人轉(zhuǎn)向Python,11%的人轉(zhuǎn)向R語言。
接下來我們看一下2014-2017年這幾種語言的使用趨勢。
因為我們2015年【R vs Python】的問卷調(diào)查中沒有提供【同時使用兩種語言】這個選項,因此下面2014-2016這四年的對比趨勢圖中,2016、2017年的Python、R語言使用趨勢我們是這樣計算的:
Python*= (Python的比例) + 50% * (同時使用Python和R語言的比例)
R* = (R的比例) + 50% * (同時使用Python和R語言的比例)
可以看到,R語言的使用率在逐年緩慢下降(從2015年的50%降到2017年的36%),而Python的使用率則從2014年的23%增長到2017年的47%。另外,其他語言的使用率也在逐年下降。
圖3:2014-2017年,Python、R語言及其他語言在分析、數(shù)據(jù)科學(xué)和機器學(xué)習(xí)的使用情況對比
最后,我們也按地區(qū)分析了幾種語言的使用趨勢,地區(qū)分布情況如下:
美國/加拿大,40%
歐洲,35%
亞洲,12.5%
拉美,6.2%
非洲/中東,3.6%
澳洲/新西蘭,3.1%
為了簡化對比圖,我們將同時使用R語言和Python的比例也按照上面的計算方法折算到單獨使用R語言和Python的比例中,并把亞洲、澳洲/新西蘭、拉美、非洲/中東這四個占比較少的地區(qū)合并為一個區(qū)域。
圖4:2016-2017年,不同地區(qū)使用Python、R語言和其他語言的情況
我們注意到不同區(qū)域的語言變化情況:
Python的使用率增長了8-10%
R語言的使用率降低了大約2-4%
其他語言的使用率降低了5-7%
上面調(diào)查數(shù)據(jù)總體表明了Python的美好前景,但是像R語言之類的也不會被取代,畢竟他們根深蒂固!