close
当前位置: 物联网在线 > 产业研究 >

017年Python生态系统已经超越了R,成为数据分析、数据科学和机器学习领域领先的平台

近期,数据挖掘资讯网站KDnuggets开展了一项调查,问题是“2016年和2017年,在数据分析、数据科学和机器学习工作中,你使用R、Python、两者都用,还是其他工具?”
  对954名受访者的调查显示,Python尚未完全“吞噬”R,但2017年Python生态系统已经超越了R,成为数据分析、数据科学和机器学习领域领先的平台,同时也在迅速吸引其他平台的用户。
  2016年,Python排名第二(“主要使用Python”占比为34%,“主要使用R”占比为42%),而在2017年的结果中,Python和R的占比分别为41%和36%。
  在KDnuggets的读者中,同时使用R和Python的比例也从2016年的8.5%上升至2017年的12%,而使用其他工具的比例从16%下降至11%。
  
 △ 2016年和2017年,在分析、数据科学、机器学习中,使用Python、R、两者都用、其他工具的份额
  随后,我们可以看看用户在不同平台之间的转移。
  
  △ 从2016到2017年,用户在Python、R、两者都用、其他工具间的转移情况
  上图看起来有些复杂,但我们可以专注于两个关键方面。Python在这两个方面都保持领先。
  忠诚度:Python用户的忠诚度更高。2016年,Python用户中的91%仍然继续使用Python。而在R的用户中,这一比例只有74%,在其他平台中只有60%。
  转移比例:大约10%的R用户转移至Python,但只有5%的Python用户转移至R。在2016年同时使用两种工具的用户中,只有49%仍然同时使用两者,而38%转而主要使用Python,只有11%转而主要使用R。
  接下来,我们来看看最近几年的变化趋势。
  
  △ 2014年到2017年,Python、R和其他平台份额的变化
  可以看到,R的份额正在缓慢下降(从2015年的约50%下降至2017年的约36%),而Python的份额则稳步上升,从2014年的23%上升至2017年的47%。其他平台的份额也在缓慢下降。
  在2015年关于R和Python的调查中,我们没有提供“同时使用Python和R”的选项。因此为了比较过去4年的数据,我们将2016年和2017年Python和R的份额按照如下公式来计算:
  Python总份额 = (Python份额) + 50%(同时使用Python和R的份额)
  R总份额 = (R份额) + 50%(同时使用Python和R的份额)
  最后,让我们看看各地区的趋势和模式。参与调查的用户来自各地区比例如下:
  美国/加拿大:40%
  欧洲:35%
  亚洲:12.5%
  拉美:6.2%
  非洲/中东:3.6%
  澳大利亚/新西兰:3.1%
  为了简化表格,对于“同时使用R和Python”的份额,我们以同上的方式进行处理,并将亚洲、澳大利亚/新西兰、拉美,以及中东/非洲合并为“其他”地区。
  △ 2016、2017年,Python、R、其他工具在各地区的使用情况
  在这3大地区中,我们观察到同样的模式:
  Python的份额上升8%到10%。
  R的份额下降2%到4%。
  其他平台的份额下降5%到7%。
  Python用户的未来看起来很光明,但我们认为,考虑到当前用户数规模庞大,R和其他平台仍将在可预见的未来保持一定的份额。

(责任编辑:ioter)

用户喜欢...

机器学习算法与Python实践之(六)二分k均值聚类

机器学习算法与Python实践这个系列主要是参考《机器学习实战》这本书。因为自己想学习Python,然后也想对一些机器学习算法加深下了解,所以就想通过Python来实现几个比较常用的机器学习算...


17个新手常见的Python运行时错误

对初学者来说,想要弄懂Python的某些错误信息还是有困难的,下面罗列了一些常见的运行时错误: 1.忘记在if, elif, else, for, while, class, def 语句末尾添加冒号(:),从而导致:“SyntaxError: invalid...


标签传播算法(Label Propagation)及Python实现

众所周知,机器学习可以大体分为三大类:监督学习、非监督学习和半监督学习。监督学习可以认为是我们有非常多的labeled标注数据来train一个模型,期待这个模型能学习到数据的分布,以期...


关于python中,map,reduce,filter,sort函数的用法

map函数:map函数接受两个参数,一个是函数名,一个是可迭代对象。通过迭代,将可迭代对象里面的对象依次传入函数,完成后返回新的可迭代对象。 用法举例: #依次求[2,4,6,7,8]的平方值...


机器学习算法与Python实践之(五)k均值聚类(k-means)

机器学习算法与Python实践这个系列主要是参考《机器学习实战》这本书。因为自己想学习Python,然后也想对一些机器学习算法加深下了解,所以就想通过Python来实现几个比较常用的机器学习算...


机器学习、Python和数学学习资料汇总

机器学习保罗万象,在学习这门技术时,最好可以有一些速查手册之类的东西在手边,它们列出了需要了解的关键点。Robbie Allen整理了20多个与机器学习相关的速查资料,并分享出来,或许也...


机器学习算法与Python实践之(四)支持向量机(SVM)实现

   机器学习算法与Python实践这个系列主要是参考《机器学习实战》这本书。因为自己想学习Python,然后也想对一些机器学习算法加深下了解,所以就想通过Python来实现几个比较常用的机器学...


Python是增长最快的主流编程语言

编程问答网站 Stackoverflow 的数据科学家 David Robinson 称,Python 是访问量增长最快的主流编程语言。在 Stackoverflow 上,主流编程语言如 Java、Javascript、C#、php 和 C++ 的问题访问量过去几年基本没...


适合Java开发者学习的Python入门教程

在Java文章频道里,我们大部分人应该对该语言都非常的了解,而且在该生态圈内至少已经呆了好几年了。这让我们有常规和专业的知识,但是也同时也让我们一些井蛙之见。 在Outside-In Java系...


python一些内置函数——filter、map、reduce

1.filter的用法 函数filter(function,list)提供一种优雅的方式过滤出列表中函数值返回为True的函数,函数filter(f,l)需要一个函数f作为第一个参数,f返回一个布尔值。举例如下: 2.map()函数的用法...