从Javascript(Node)调用R函数

时间:2018-05-20 04:21:44

标签: javascript r node.js statistics

我正在尝试从R脚本调用函数。我正在使用r-script如下:

var R = require("r-script");
var out = R('SampleR.R').data(5, 20).callSync();
console.log(out);

它为R('SampleR.R')返回undefined。这是我的R脚本,它是非常简单的脚本,仅用于测试。

print('Hello')

请耐心等待我,我是R脚本和javascript集成的新手。我在这里做错了什么?

我也试过js-call-r,但到目前为止还没有运气!

1 个答案:

答案 0 :(得分:1)

我终于找到了解决问题的方法。实际上r-script或js-call-r并没有帮我调用R函数。这是我做的:

我在R上使用plumber package,因此它创建了一个localhost,因此我可以通过http请求调用我的R函数。完整的文档在他们的网站上,但以下是我设置它的步骤:

a- Open R Gui(64位)注意:如果您没有R,请从以下网址下载:cran.r-project.org/mirrors.html

b-如果您没有管道工程序包,请使用R GUI使用以下命令安装它:install.packages("plumber")

c-要检查R Gui根目录是否在您想要的文件中,请发送命令:getwd()

d-如果不是您想要的路径,请更改为:setwd("C:/your/Desired/Path")

e-将您的R文件复制到您在上一步中设置的同一目录

f-发送此命令开始阅读您的R档案:pr <- plumber::plumb("YourRFile.R")

g-运行此命令,以便它将运行本地主机:pr$run()

h-它应该为您提供端口号,以便您可以发送接收消息