查看原文
其他

Python 和 R 哪个更适合机器学习?两者结合,双倍快乐

(点击上方公众号,可快速关注)

转自:大数据文摘,翻译:张大笔茹、笪洁琼

如果你打算准备完成一个机器学习项目,比较难选择哪种编程语言,那么你要好好看这篇文章!

 

这篇文章不仅可以带你了解Python和R之间的区别,还可以为你盘点两种语言的优劣势。OK,就让文摘菌带领大家开始吧!

 

R和Python都是在数据科学领域中非常流行的语言。据统计,约69%的开发人员使用Python而使用R的只有24%,两者都是免费开源的。但Python被定位为一种广泛使用的编程语言,而R则多用于统计分析。

 

人工智能(AI)和数据分析(BA)是两个构建开源语言非常普遍的领域。Python和R语言都有多种强大的支持环境,可以帮助数据科学家更有效地进行科学工作。

 

机器学习和数据分析之间的界限相对比较模糊。一般认为机器学习在模型可解释性方面比较注重先验的准确性,而数据分析则更关注可解释性和事实推演。Python由于越来越多地应用于先验的准确性,而在机器学习中建立了很好的声誉。作为以事实推论和静态推断擅长的语言,R则在数据分析中名声大噪。

 

这些不代表两种没有区别,Python完全可以用作数据分析工具,R在机器学习方面有足够的适应性。比如,Python有一些库来进行可测量的归纳,而R则有一些安装包来提高预测准确度。

 

接下来我们将详细讨论这两种语言,帮助你为项目选择最合适的编程语言。

 

Python

     


Python编程语言创建于80年代后期,最初用于Google内部框架方面。创建Python的设计师十分有激情。

现在它已被广泛用于YouTube,Instagram,Quora和Dropbox当中。Python在IT业务中使用频繁,并在开发团队里常用于基础构建。因此,如果你需要一种通用的编程语言和丰富拓展库,Python是首选。

 

Python的优势

 

  • 通用—如果企业想要度量和统计数据以外的其他功能,Python是一个很好的选择。比如说设计一个功能强大的网站;

  • 学会即真香—Python虽然难学,但是对有天赋的程序猿来说,一旦学会就无比好用;

  • 丰富的库—python的库非常丰富,不仅可以用来完成部分有难度的项目,还能提升AI的适用性。Pandas就是一个非常典型的例子,如果你的团队重度使用R语言,那么RPy2库很适合你们;

  • 更好的集成性-在任何设计条件下,Python都具有优于R的特性。通过这种方式,无论设计人员是否使用诸如C,C++或Java之类的语言,它都可以更好地连接各种语言。而且,基于python的堆栈来有效地创建与整合数据研究工作并不难;

  • 提高效率—Python的语法与其它软件一样好理解,这点R也一样,可以更好地提升团队效率。

 

Python的劣势

 

  • 缺少公共存储库,也没有一些特定可选的R专用库;

  • 由于动态组合,在某些情况下,Python容易造成一些计算错误,而这些导致错误的因素又不太确定。


R

         


R是由统计人员创建的,几乎是为分析人员创建的,因此只要熟练掌握其语法就能做分析。由于该语言包含与机器学习相关的科学计算,而这些计算是从统计数据中得出的,因此R需要提高对语法的理解。


如果你的工作需要认真观察,那么R就会帮你缩小工作范围。例如,如果需要检验数据集,R是最佳选择


R的优势


  • 适用于分析—如果频繁需要数据检验,R是最佳选择,因为它可以快速建模,并与数据集一起搭建AI/ML模型;

  • 大量好用的库和工具—与Python类似,R包含不同的安装包,可以提升机器学习模型的结果。例如,Caret包支持R的AI应用,有助于有效地建立先验模型。R的使用者将从安装包里获得更多的检验以及计算方式;

  • 适用于探索性工作—如果你需要在现有的安装包上进行深入研究,那么R就比较简单,因为工程师只需要写几行代码即可。

 

R的劣势


  • 代码比较简单,但是不太容易学会,函数可能会返回异常结果;

  • 与其它的语言不同,R是从1开始,不是0开始;

  • 语法也不太好懂,虽说有帮助文档。

 

结论


关于机器学习,Python和R都有安装库的丰富运用。只有懂得两种语言的好,才能更好地运用它们。

 

另一方面,可以在数据清洗开始时使用Python,建模的时候用R,R也可以和Py一起使用

 

按照这些思路,可以将R用作Python的库或将Python用作R的预处理库。如果你不太了解Python,可以尝试使用封装模块的平台,这样你用起来可能更快, 关于Python和R的优缺点,还是要根据项目的情况来看。

 

相关报道:

https://towardsdatascience.com/python-vs-r-which-is-good-for-machine-learning-ecfb87c7f8ca



- EOF -




推荐阅读  点击标题可跳转

1、机器学习中不得不知的 5 种采样方法,分层、水塘等!

2、几行代码搞定ML模型,低代码机器学习Python库正式开源

3、图解机器学习:人人都能懂的算法原理


看完本文有收获?请转发分享给更多人

关注「大数据与机器学习文摘」,成为Top 1%

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存