如何让充分利用R+Python

技术如何让充分利用R+Python今天就跟大家聊聊有关如何让充分利用R+Python,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。如果你从事数据科学的工作,可能会

今天想和大家聊聊如何充分利用R Python,可能很多人都不太懂。为了让大家更好的了解,边肖为大家总结了以下内容,希望大家能从这篇文章中有所收获。

如果你从事数据科学工作,你可能会马上想到两种编程语言:R和Python。

事实上,R和Python本身就是很好的工具,但它们通常被认为是竞争对手。今天的推荐文章将比较这两者,而不是把它们当作两个选择。

如果你在谷歌搜索栏输入R vs Python,你会立刻得到很多关于一方优势的文章。

造成这一结果的原因之一是,人们根据对编程语言的选择,将数据科学领域分为阵营、R阵营和Python阵营。而且,这两个阵营往往无法和谐相处,其成员都认为自己的语言优于对方。因此,在某种程度上,区别不在于工具,而在于mdashmdash

如何让充分利用R+Python

为什么不同时使用呢?

数据科学领域很少有人同时使用Python和R。但事实上,虽然很多人只使用一种编程语言,但他们也想使用另一种软件的一些功能。例如,R用户有时希望使用Python的原生面向对象功能,一些Python用户也希望在R中使用各种统计分布。

如何让充分利用R+Python

上图为红和尚2018年第三季度的调查结果。这个调查数据来自于Stack Overflow和Github上语言的流行,很明显R和Python都很流行。因此,我们没有内在的理由不能在同一个项目中同时使用两者。我们的最终目标应该是更好的分析和更好的理解,编程语言的选择不应该成为实现这个目标的障碍。

R与Python回顾

让我们看看这些语言及其优缺点。

如何让充分利用R+Python

Python

自1991年发布以来,Python一直非常流行,并广泛用于数据处理。优点是:

面向对象语言。

用途广泛。

有很多扩展(功能)和强大的社区支持。

简单,容易理解和学习。

Python是熊猫、numpy和scikit-learn等软件包上机器学习活动的* * *选择。

但是与R不同,Python没有专门的统计计算包。

如何让充分利用R+Python

R

R * * *版本于1995年发布,从那以后,它成为了业内最常用的数据科学工具之一。

包含几乎所有可能的统计应用程序的安装包。CRAN目前拥有超过10k的包包。

配备齐全?可视化库,如ggplot2。

能够进行独立分析。

性能好的r并不是最快的语言,在处理大数据集时有时可能内存太大。

充分利用这两种语言

能否同时使用R的统计能力和Python的编程能力?当我们可以轻松地在R或Python脚本中嵌入SQL代码时,为什么不混合使用R和Python呢?

基本上有两种使用Python和r的方法.

在Python中使用R

PypeR

(http://bioinfo.ihb.ac.cn/softwares/PypeR/)

PypeR提供了一种通过管道从Python访问R的简单方法。PypeR也包含在Python的Package Index中,它提供了一种更方便的安装方法。当Python和R之间不需要频繁的交互数据传输时,PypeR特别有用,通过管道运行R,Python程序在进程操作系统平台(包括Windows、GNU Linux和Ma)上运行。

c OS)的子流程控制下,可以获得内存控制和可移植性方面的灵活性。

如何让充分利用R+Python

pyRserve

(https://pypi.org/project/pyRserve/)

pyRserve使用Rserve作为RPC连接网关。通过这种连接,可以在Python中用R设置变量,也可以远程调用R函数。R对象作为Python实现的类的实例公开,在许多情况下R函数作为这些对象的绑定方法。

  • rpy2

(https://rpy2.bitbucket.io/)

rpy2在Python进程中运行嵌入式R。它创建了一个框架,可以将Python对象转换为R对象,将它们传递给R函数,并将R输出转换回Python对象。rpy2更常用,并且在积极开发中。

如何让充分利用R+Python

在Python中使用R的一个优点是可以在Python中轻易使用R的强大软件包,如ggplot2,tidyr,dplyr等。举一个例子,让我们看看如何在Python中使用ggplot2进行映射。

  • 基本场景

  • 如何让充分利用R+Python

https://rpy2.github.io/doc/latest/html/graphics.html#plot

如何让充分利用R+Python

  • 几何

  • 如何让充分利用R+Python

https://rpy2.github.io/doc/latest/html/graphics.html#geometry

如何让充分利用R+Python

在R中使用Python

我们可以使用下面其中一种替代方法在Python中运行R脚本:

  • rJython

(https://r-forge.r-project.org/projects/rjython/)

该包通过Jython实现了Python的接口。它旨在让其他包能够与R一起嵌入python代码。

  •  rPython

(https://cran.r-project.org/web/packages/rPython/index.html)

rPython又是一个允许R调用Python的包。它使得在R中运行Python代码,进行函数调用,分配和检索变量等成为可能。

  • SnakeCharmR

(https://github.com/asieira/SnakeCharmR)

SnakeCharmR是rPython的现代版本。它是'rPython'的一个分支,它用了'jsonlite'并且比rPython有很多进步之处。

  • PythonInR

(https://bitbucket.org/Floooo/pythoninr/)

PythonInR通过提供从内部与Python交互的函数,使得从R内部访问Python变得非常容易。

  •  reticulate

(https://github.com/rstudio/reticulate)

网状软件包为Python和R之间的互操作性提供了一套全面的工具。在上述所有选择中,这个是最广泛使用的,更是因为它正在被Rstudio积极开发。Reticulate在R会话中嵌入Python会话,实现无缝、高性能的互操作性。该软件包使你能够将Python代码网格化为R,从而创建一个将两种语言编织在一起的新项目。

如何让充分利用R+Python

网状包提供以下设施:

  • 以各种方式从R调用Python,包括R Markdown,获取Python脚本,导入Python模块以及在R会话中以交互方式使用Python。

  • R和Python对象之间的转换(例如,R和Pandas数据帧之间,或R矩阵和NumPy数组之间)。

  • 灵活地绑定到不同版本的Python,包括虚拟环境和Conda环境。

R和Python都是非常强大的语言,其中任何一种语言都足以执行数据分析任务。但是,对于这两者来说肯定存在一些优缺点,如果我们能够利用两者的优势,一定可以做得更好。无论如何,对二者进行充分的了解能够让我们在更多的环境中进行工作。上述就是小编为大家分享的如何让充分利用R+Python了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注行业资讯频道。

看完上述内容,你们对如何让充分利用R+Python有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/50257.html

(0)

相关推荐

  • 如何避免Mysql的mysql-bin文件的坑

    技术如何避免Mysql的mysql-bin文件的坑这篇文章将为大家详细讲解有关如何避免Mysql的mysql-bin文件的坑,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

    攻略 2021年10月25日
  • 如何理解Python基础中的for循环语句

    技术如何理解Python基础中的for循环语句如何理解Python基础中的for循环语句,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。Python for循

    攻略 2021年10月25日
  • dubbo服务无法调用的原因(dubbo服务已发布却无法调用)

    技术dubbo调不到dubbo服务怎么办这篇文章主要讲解了“dubbo调不到dubbo服务怎么办”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“dubbo调不到dubbo服

    攻略 2021年12月15日
  • 基于Python的算法数据集怎么实现

    技术基于Python的算法数据集怎么实现这篇文章主要介绍“基于Python的算法数据集怎么实现”,在日常操作中,相信很多人在基于Python的算法数据集怎么实现问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法

    攻略 2021年11月23日
  • sqlite select语句(sql中select的功能)

    技术SQLite中的SELECT子句如何使用表达式这篇文章将为大家详细讲解有关SQLite中的SELECT子句如何使用表达式,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。SQLite中

    攻略 2021年12月18日
  • Oracle AWR如何实现数据导入/导出

    技术Oracle AWR如何实现数据导入/导出这篇文章主要介绍Oracle AWR如何实现数据导入/导出,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!LINUX状态下,连接oracle用户:su

    攻略 2021年11月11日