我正在研究一个需要运行一些R代码以进行一些数据分析的项目。该项目主要是在JavaScript中,我需要一种方法来从JS运行R代码。我的研究尚未找到任何好方法。有没有办法做到这一点?有没有办法从JavaScript运行R代码?
另外,我有没有经验与R(另一人提供的R代码)。
我正在研究一个需要运行一些R代码以进行一些数据分析的项目。该项目主要是在JavaScript中,我需要一种方法来从JS运行R代码。我的研究尚未找到任何好方法。有没有办法做到这一点?有没有办法从JavaScript运行R代码?
另外,我有没有经验与R(另一人提供的R代码)。
R-node怎么样?
我认为另一个备选是使用node.js的作为服务器(http://nodejs.org/),并从内部调用R作为一个子进程,搜索Node.js的API文档的细节。
也期待在此确认:Is it possible to execute an external program from within node.js?
注:节点可以运行任何JS脚本(S)你可能有,但不一定必须是具体的节点。
您可以添加R节点的解释吗? –
当然,我没有亲自尝试过,但是这是直接从gitourious引用的,你只需点击那个小小的更多...链接:) //// R-Node是一个Web前端统计分析软件包R. 使用此前端,您可以从任何Web浏览器连接到在远程(或本地)服务器上运行的R实例,并与其交互,发送命令并接收响应。 特别是,图形命令(如plot()和hist())将在浏览器中执行,并将图形绘制为SVG图像。 – 2013-07-16 00:17:48
总是有更好的信息在这里,甚至更好的答案本身。网页有移动或正在编辑的恶习。看起来像一个有用的包,但希望它会坚持下去。 –
这绝不是最好的方法,但我可以为我自己的Javascript + R项目(silly.r是一个R脚本,位于“r”目录中)执行以下操作。
app.get('/sfunction', function (req, res) {
exec('Rscript r/silly.r this is a test', function(error, stdout, stderr) {
if (error) {
console.log(error);
res.send(error);
}
else if (stderr) {
console.log(stderr);
res.send(stderr);
}
else if (stdout) {
console.log("RAN SUCCESSFULLY");
res.sendfile("savedoutput/test.json");
}
});
});
的代码是从线167-182从这里:我基本上是从我的Express服务器运行将R代码作为终端命令https://github.com/ngopal/VisualEncodingEngine/blob/master/jsserver/app.js
你使用IE或其他浏览器? Internet Explorer确实有一个机制来从JavaScript脚本Windows,但你将不得不调整你的安全设置....然后使用'Rscript.exe'你可以运行'yourScript.R'像这样'var shell = new ActiveXObject(' WScript.Shell'); shell .Run(“Rscript yourScript.R arg1”);' – agstudy
现在,我正在使用Chrome进行开发。我认为我不会轻易转换。 –
这是在浏览器上的Javascript * *对不对?这是一个网络客户端?这很重要,因为现在JS不只是一种Web客户端语言,并且可以作为机器上的完全特权语言(请参阅node.js)以及Web浏览器中的沙盒语言来运行。 – Spacedman