node-Rstats
An interface for node.js to statistical programming language R based on the fabulous Rcpp package
Installation
Currently, rstats
is ONLY supported for Unix operating systems.
Also, it is required that the R packages RInside
, Rcpp
and RJSONIO
are installed inside R. Additionally, building the package using node-gyp
requires
python
(v2.7
,v3.x.x
is not supported)make
- A C/C++ compiler toolchain, such as GCC
With these prerequisites satisfied, one can simply install rstats
using npm
npm install rstats
Getting Started
After installation, the package can be loaded as follows:
var rstats = ;
Once the package is loaded, we can create an R session by the command
var R = ;
Important Functions
parseEvalQ
Evaluating R expressions is easy. We can use the parseEvalQ function as follows:
R;
parseEval
To evaluate an R expression and directly capture its return value, one can use the parseEval function.
var x = R;
The variable x
is now equal to the array [1,2,3]
.
assign
Numeric values can be easily assigned to variables in the current R session:
R;R; // calculate the sum of x+y and print the resultR;
get
To retrieve an object from the R session, we use the get command. For example, let us create a 2x2 matrix in R and retrieve it in JavaScript as a nested array:
R;var mat = R;
Internally, the get function uses JSON in order to convert the R data types to JavaScript data types.
We can also run much more complicated calculations and expose the R objects to JavaScript. Consider a linear regression example:
R;var lm_fit = R;var coefs = lm_fitcoefficients;var residuals = lm_fitresiduals;
Unit Tests
Run tests via the command npm test