for*_*orJ 10 javascript r node.js
我想将R与节点JS集成.我发现了一个简单的npm调用r-script,允许r脚本在节点js上运行.
对于那些不知道r-script是什么的人,以下节点JS运行IntegrationTest.RR脚本
节点JS代码
var R = require('r-script');
var out = R('/Users/JC/Documents/Programming/R/Tutorial/IntegrationTest.R')
.data()
.callSync();
console.log(out);
Run Code Online (Sandbox Code Playgroud)
IntegrationTest.R脚本
print('hello')
Run Code Online (Sandbox Code Playgroud)
所以当我运行节点JS代码时,上面打印你好.
然后,当我尝试下面的脚本(R脚本顺便在R studio上工作)时,它会抛出我的错误并说Loading Required Packages : ape.
我想也许它不知道从哪里获得R包所以我指定了存储库,但它仍然引发了我同样的错误.
任何试图将R与节点JS集成的人都会遇到同样的事情或知道这里发生了什么?
谢谢
节点JS
var R = require('r-script');
var out = R('/Users/JC/Documents/Programming/R/Tutorial/MoransI.R')
.data()
.callSync();
console.log(out);
Run Code Online (Sandbox Code Playgroud)
MoransI.R
if (!require("ape")) {
install.packages("ape", repos="http://cran.rstudio.com/")
library("ape")
}
ozone <- read.csv('/Users/JC/Documents/Programming/R/Tutorial/ozone.csv', sep=',', header=T)
head(ozone, n=10)
ozone.dists <- as.matrix(dist(cbind(ozone$Lon, ozone$Lat)))
ozone.dists.inv <- 1/ozone.dists
diag(ozone.dists.inv) <- 0
ozone.dists.inv[1:5, 1:5]
Moran.I(ozone$Av8top, ozone.dists.inv)
Run Code Online (Sandbox Code Playgroud)
老实说,我认为两个R脚本之间的唯一区别是第一个不加载任何包而第二个加载包.
小智 5
我希望您之前找到了答案,但您的问题是您没有像Github 自述文件中建议的那样使用需求:
\n\n\n\n\nr脚本
\n\n一个简单的小模块,用于将数据从 NodeJS 传递到 R(然后再返回)。
\n\n从节点传递的数据被转换为列表并作为变量输入加载到 R 环境中。R 中不需要特殊语法。为了更好的可移植性/可靠性,建议加载需要的包(打包在模块 \xe2\x80\x94 内,无需安装)。
\n
使用示例needs:
import MASS package for isoMDS\nneeds(MASS)\nRun Code Online (Sandbox Code Playgroud)\n
| 归档时间: |
|
| 查看次数: |
8842 次 |
| 最近记录: |