Python借助系统执行R语言程序脚本,实现R语言和Python进行程序交互。

R语言在系统中配置环境变量,保障脚本运行

写一个R语言的程序脚本,放到系统中的任意路径位置,确定cmd的环境变量下R语言的执行命令可以成功启动,如下所示:

在这里插入图片描述
R语言安装后,使得他的环境变量在windows中配置成功生效后,就可以在系统环境中任意位置启动R语言,例如在E盘位置也可进行启动R,如下所示:

在这里插入图片描述
配置R语言在windows的环境变量,可以参考资料为:
https://blog.csdn.net/tandelin/article/details/94580789

Python 利用系统命令调用R语言的程序脚本

在windows的终端确定cmd下可以成功执行Rscript命令,如下:

cmd下成功执行命令后,利用python的os系统命令,调用R语言程序脚本,如下所示:

import os
str=(‘Rscript C:\Users\Administrator\Desktop\code.R’) //python命令 + B.py
p=os.system(str)

在通过python获取系统命令,系统命令执行R语言程序脚本后,Python通过os终端对R语言的脚本进行调用,获取R语言得到的结果,通过系统实现Python和R语言的交互。

同理,在Linux系统中也可类比以上进行效果实现。

Python运行.py脚本

import os
p=os.system("python D:\\venv\\fire.py")

安装rpy2进行python和R的交互

rpy2包的地址https://www.lfd.uci.edu/~gohlke/pythonlibs/#rpy2

方法一:下载后离线安装rpy2包

pip install C:\Users\Administrator\Desktop\test\rpy2-2.9.5-cp35-cp35m-win_amd64.whl

方法二:在线安装

(venv) D:\Python\Python_venu>pip install https://www.lfd.uci.edu/~gohlke/pythonlibs/#rpy2/rpy2‑2.9.5‑cp35‑cp35m‑win_amd64.whl --default-timeout=100

在对R语言的包进行安装好后,对R语言进行环境变量的配置

1.rpy2包的环境变量配置

R_USER
D:\Python\Python_venu\venv\Lib\site-packages\rpy2

2.R语言系统环境变量配置

配置方法和java环境变量配置相同,一通百通而已。

编辑系统变量

a.右键单击“我的电脑”,选择“属性”-“高级”,点击“环境变量”。
新建:环境变量名称:R_HOME,
变量值为:“D:\R_language\R-3.5.3”
b.path环境变量编辑添加
将“%R_HOME%\bin”添加到path环境变量中,放在前面或后面以分号隔开。
c.新建:环境变量名称:R_classpath,
“变量值”填写“.;%R_HOME%\bin\R; %R_HOME%\R\Rscript”
测试
配置完成后在命令窗口中输入R查看当前的版本是否配置成功。出现提示信息代表成功了。
在这里插入图片描述

4.验证Python能否调用R语言

R 语言调用Python资料

https://blog.csdn.net/tandelin/article/details/87997172

https://blog.csdn.net/tandelin/article/details/88031770

考虑这样一个问题,有hello.py脚本,输出”hello, world!”;有TestInput.py脚本,等待用户输入,然后打印用户输入的数据。那么,怎么样把hello.py输出内容发送给TestInput.py,最后TestInput.py打印接收到的”hello, world!”。下面我来逐步讲解一下shell的交互方式。 hello.py代码如下: #!/usr/bin/python print "hello, world!" TestInput.py代码如下: #!/usr/bin/python str = raw_input() print("input strin R语言有很强大的统计绘图函数,python的开发能力强,数据处理速度比R快。在平时使用python处理数据,使用R统计分析。于是想着怎么使用python来调用R,毕竟python还不能取代R,它们是相辅相成的,看到网上很多辩论python好还是R好的,就不多说了。python调用R的模块是rpy2。 python 与 R 是当今数据分析的两大主流语言。python是通用编程语言,科学计算、数据分析是其重要的组成部分,但并非全部;而R则更偏重于统计分析,毕竟R是统计学家发明的,本身就是为统计而生。(推荐学习:Python视频教程)python的优势在于其全能性,几乎所有的领域都有python的身影,而R则在统计及其相关领域非常专业。二者各有优势。那么这么好的两个东西,能不能结合到一起呢?答案是肯... Python控制台打开之后,会直接进入交互式环境,显示提示符“>>>”。 而命令行程序则会显示DOS的命令提示符,我们需要输入“Python”或者“Python3”进入交互式环境。 一般来说,顺利安装Python之后,有两种方式可以进入Python交互性环境。一种是在Python自带的IDLE中直接打开交互式窗口,如下图所示: 另一种是打开开始菜单,输入cmd之后,进入命令行窗口,之后输入Python,回车之后便可以进入到交互式环境中去,如下图所示: 在>>>提示符后边输入编程语句,然后回车进行执行,就会得到运行的结果。简单来看,这个交互式环境有点类似计算器,一次执行一条语句,而且还可以保 R(又称R语言)是一款开源的跨平台的数值统计和数值图形化展现工具。通俗点说,R是用来做统计和画图的。R拥有自己的脚本语言和大量的统计、图形库(得益于开源社区),这让她看起来既美又实用。与其他同类软件(如 SPSS)相比,R的特点是纯命令行的,这倒也好,我们更应该把注意力放在数据本身,而非统计工具的UI。R虽说有一套自己的语言,还挺完备,但她最专业的还是做统计和画图,而像连接数据库、文本处理、文件操... 上一篇说了python使用 rpy2 调用 R,这里介绍R如何调用python。R的强项在于统计方面,尤其是专业的统计分析,统计检验以及作图功能十分强大,但是在通用性方面,就远不如Python了,比如python可以做web,可以开发GUI,可以爬虫,甚至可以开发游戏,这些R其实也不是完全不行,但是在易用性方面实在是难以与Python相匹敌。所以如果要是能将R与Python相结合,充分发挥二者的优... R(又称R语言)是一款开源的跨平台的数值统计和数值图形化展现 工具。通俗点说,R是用来做统计和画图的。R拥有自己的脚本语言和大量的统计、图形库(得益于开源社区),这让她看起来既美又实用。与其他同类软件(如 SPSS)相比,R的特点是纯命令行的,这倒也好,我们更应该把注意力放在数据本身,而非统计工具的UI。R虽说有一套自己的语言,还挺完备,但她最专业的还是做统计和画图,而像连接数据库、文本处理、文件... 在控制台运行代码 如果习惯于使用R语言分析数据的人一定习惯在控制台运行代码,而不是一整个脚本运行代码,因为经常读取文件是一件比较耗时的事情,并且我们经常需要根据数据的实际情况修改自己的代码,所以一整个脚本文件运行势必会浪费很多不必要的时间 如何在python中调用R?这其中包括了如何调用R的对象(函数和包),R和python的对象如何互相转换,以及如何调用R的脚本(外界参数的输入)。python提供了一个模块rpy2,可以较好地完成这项工作。一、安装rpy2rpy2的网址:http://rpy.sourceforge.net/index.html可以使用easy_install安装,# easy_install rpy2注意事项:(... 1;安装R、Python2;安装Python模块rpy2easy_install rpy23;添加系统环境变量PYTHONPATHD:\pythonTools\WinPython-64bit-2.7.9.4\python-2.7.9.amd64\Lib\site-packages\rpy2;D:\Program Files\R\R-3.2.2\bin\x64;D:\pythonTools\WinP...