近日,kdnuggets做了一個關於資料科學、機器學習語言使用情況的問卷調查,他們分析了954個回答,得出結論——Python已經打敗R語言,成為分析、資料科學和機器學習平臺中使用頻率最高的語言。有關此次問卷更具體的情況如何?雷鋒網 AI科技評論將kdnuggets上發表的總結文編譯整理如下:
之前我們在kdnuggets上做了這樣一個問卷調查,2016、2017兩年,在分析、資料科學和機器學習的工作中,你用R語言,還是Python,或兩者都用,或選擇其他的語言?
通過分析954個回答,我們得出了這樣的結論:雖然Python並沒有完全取代R語言,但在2017年,Python已經成功打敗R語言,成為分析、資料科學和機器學習平臺中使用頻率最高的語言。
在2016年Python還是第二位(主要用Python的人佔34%,主要用R語言的人佔42%),在2017年Python就以5%的優勢領先於R語言(主要用Python的人佔41%,主要用R語言的人佔36%)。同時用Python和R兩種語言的人也從2016年的8.5%增長到12%了,而用其他語言的人則從16%降到11%。
圖1:2016-2017年,在分析、資料科學和機器學習中使用Python、R語言、Python和R語言、其他語言的佔比
之後,我們分析了大家在不同語言之間的轉換情況。
圖2:2016-2017年,分析、資料科學以及機器學習平臺中各種語言的轉換情況
這張圖看起來很複雜,不過從中可以很容易地看出Python在忠誠度和轉換率兩個關鍵層面都領先於其他語言。
- 忠誠度:使用Python的使用者對它的忠誠度要高於使用其他語言的使用者。2016年使用Python的使用者中,有91%的人2017年還在繼續使用它,而R語言的使用者留存率為74%,其他語言的使用者留存率則為60%。
- 轉換率:從2016年到2017年,只有5%的Python使用者轉向R語言,而R語言使用者轉向Python的則是10%,這是前者的兩倍。另外,2016年同時使用兩種語言的人中,只有49%的人還在繼續使用這兩種語言,38%的人轉向Python,11%的人轉向R語言。
接下來我們看一下2014-2017年這幾種語言的使用趨勢。
因為我們2015年【R vs Python】的問卷調查中沒有提供【同時使用兩種語言】這個選項,因此下面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語言及其他語言在分析、資料科學和機器學習的使用情況對比
最後,我們也按地區分析了幾種語言的使用趨勢,地區分佈情況如下:
- 美國/加拿大,40%
- 歐洲,35%
- 亞洲,12.5%
- 拉美,6.2%
- 非洲/中東,3.6%
- 澳洲/紐西蘭,3.1%
為了簡化對比圖,我們將同時使用R語言和Python的比例也按照上面的計算方法折算到單獨使用R語言和Python的比例中,並把亞洲、澳洲/紐西蘭、拉美、非洲/中東這四個佔比較少的地區合併為一個區域。
圖4:2016-2017年,不同地區使用Python、R語言和其他語言的情況
我們注意到不同區域的語言變化情況:
- Python的使用率增長了8-10%
- R語言的使用率降低了大約2-4%
- 其他語言的使用率降低了5-7%
上面的資料表明了Python的使用前景很好,我們也預測R語言和其他語言的使用率還是會有相當的佔比,因為它們已經有很深的使用者基礎。
自 雷鋒網