我正在尝试从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,但到目前为止还没有运气!
答案 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-它应该为您提供端口号,以便您可以发送接收消息