您现在所在位置: 首页 > 睿道新闻

python编程与R之间在科学计算领域的差别?

发布时间:2022-09-16点击数:

  每个领域似乎只专注于一个专业社区,你会发现R在统计、勘探等领域更受欢迎。不久前,您可能会使用R来构建和运行或者进行一些有意义的探索,但是使用的时间比安装Python或者用于进行相同探索的时间要短得多。


  所有这些东西都被颠覆性技术改变了,它们是Jupyternotebook和Anaconda。


  注意:JupyterNotebokks:Python/R代码可以在浏览器中编辑;Anaconda:对于Python和r来说很容易安装和打包。


  由于您可以在方便提供报告和现成分析的环境中开始运行,因此您消除了那些希望完成这些任务的人和他们喜欢的语言之间的障碍。Python现在可以以独立于平台的方式打包,并且可以更快地提供快速低成本的分析比率。


  影响社区语言选择的另一个差异是“开源”的理念。不仅是开源库,还有致力于开源的协作社区。具有讽刺意味的是,开源的授权软件,比如Tensorflow到GNUScientificLibrary(分别是Apache和GPL),似乎都有Python和R的绑定。尽管有R的公共版权,但纯粹支持Python社区的人还是比较多。另一方面,似乎更多的企业支持R,尤其是有统计历史的企业。


  最后,考虑到社区和协作,Python在Github上支持更多。如果要看最新的Python包趋势,我会看到像Tensorflow这样的项目超过35000个。相反,如果我看R包的最新动态,比如闪亮,斯坦…,都是关注度不到2000的。


  性能。


  性能很难提高,因为要测试的指标和情况太多,基于特定硬件很难测试。一些操作已经用一种语言进行了优化,但没有用其他语言实现。的确,你可能会失去一些东西,比如有人抱怨,有人离开,整个分析报告可能会被丢弃。无论如何,生活必须继续...


  通过一个快速的完整性检查,包括加载时间和命令行运行时间:R用0m0.238s,Python用0m0.147s还是那句话,这不是严格的测试。


  快速测试表明Python代码要快得多,这通常不太重要。


  既然速度不是重点,那么数据科学家更关心什么呢?从这两种语言的最新趋势来看,发现它们作为祈使句的能力是一个重要因素。比如大部分Python程序员都很依赖熊猫工作。这就引出了下一个话题:两种语言都有哪些模块和库,它们是如何实现的?这是一个更有意义的比较。


  第三方支持。


  包管理工具。


  Python使用PyPi,r使用CRAN,Anaconda两者都支持。


  CRAN使用其内部的“install.packages”命令进行分发管理。到目前为止,CRAN上大约有12000个有效的软件包。如果你浏览一下,你会发现大概有一半的包是关于数据科学的,占了6000多个包。


  PyPi上大概有14.1万包,比CRAN多十倍。其中约3700包标注为理工科相关。当然,有大量的包装实际上是科学相关的,但没有正确识别。


  这两种语言似乎不会受到大量重复性工作的影响。的确,当我在PyPi上搜索“随机森林”时,我找到了170个项目,但是这些包之间有一些差异。



  • 友情链接

关注东软睿道公众号了解更多IT行业资讯

添加东小萌微信
获取更多IT学习资源