public class RClient4Java
extends java.lang.Object
import org.ddahl.rscala.RClient4Java;
public class Example {
public static void main(String[] args) {
RClient4Java R = new RClient4Java();
double a = R.evalD0("rnorm(8)");
double[] b = R.evalD1("rnorm(8)");
double[][] c = R.evalD2("matrix(rnorm(8),nrow=4)");
R.eval("v <- rbinom(8,size=10,prob=0.4)\n"+
"m <- matrix(v,nrow=4)",true);
Object[] v1 = R.get("v");
int[] v2 = (int[]) R.get("v")[0]; // This works, but is not very convenient
int v3 = R.getI0("v"); // Get the first element of R's "v" as a Int
int[] v4 = R.getI1("v"); // Get R's "v" as an int[]
int[][] v5 = R.getI2("m"); // Get R's "m" as an int[][]
int[] aa = {5,6,4};
R.set("a",aa);
R.eval("b <- matrix(NA,nrow=3,ncol=2)");
for ( int i=0; i<3; i++ ) {
int[] bb = {2*i,2*i+1};
R.set("b",bb,""+(i+1)+",",true);
}
R.eval("myList <- list()");
String[] cc = {"David","Grace","Susan"};
R.set("myList",cc,"'names'",false);
int[] dd = {5,4,5};
R.set("myList",dd,"'counts'",false);
R.eval("print(myList)");
}
}
Constructor and Description |
---|
RClient4Java() |
RClient4Java(java.lang.String rCmd) |
RClient4Java(java.lang.String rCmd,
boolean serializeOutput) |
RClient4Java(java.lang.String rCmd,
boolean serializeOutput,
boolean rowMajor) |
RClient4Java(java.lang.String rCmd,
boolean serializeOutput,
boolean rowMajor,
int port) |
RClient4Java(java.lang.String rCmd,
boolean serializeOutput,
boolean rowMajor,
int port,
boolean debug) |
Modifier and Type | Method and Description |
---|---|
void |
eval(java.lang.String snippet)
Calls and returns eval(snippet).
|
java.lang.Object |
eval(java.lang.String snippet,
boolean evalOnly,
boolean asReference)
Evaluates snippet in the R interpreter.
|
double |
evalD0(java.lang.String snippet)
Calls eval(snippet,true) and returns the result using
getD0 . |
double[] |
evalD1(java.lang.String snippet)
Calls eval(snippet,true) and returns the result using
getD1 . |
double[][] |
evalD2(java.lang.String snippet)
Calls eval(snippet,true) and returns the result using
getD2 . |
int |
evalI0(java.lang.String snippet)
Calls eval(snippet,true) and returns the result using
getI0 . |
int[] |
evalI1(java.lang.String snippet)
Calls eval(snippet,true) and returns the result using
getI1 . |
int[][] |
evalI2(java.lang.String snippet)
Calls eval(snippet,true) and returns the result using
getI2 . |
boolean |
evalL0(java.lang.String snippet)
Calls eval(snippet,true) and returns the result using
getL0 . |
boolean[] |
evalL1(java.lang.String snippet)
Calls eval(snippet,true) and returns the result using
getL1 . |
boolean[][] |
evalL2(java.lang.String snippet)
Calls eval(snippet,true) and returns the result using
getL2 . |
byte |
evalR0(java.lang.String snippet)
Calls eval(snippet,true) and returns the result using
getR0 . |
byte[] |
evalR1(java.lang.String snippet)
Calls eval(snippet,true) and returns the result using
getR1 . |
byte[][] |
evalR2(java.lang.String snippet)
Calls eval(snippet,true) and returns the result using
getR2 . |
java.lang.String |
evalS0(java.lang.String snippet)
Calls eval(snippet,true) and returns the result using
getS0 . |
java.lang.String[] |
evalS1(java.lang.String snippet)
Calls eval(snippet,true) and returns the result using
getS1 . |
java.lang.String[][] |
evalS2(java.lang.String snippet)
Calls eval(snippet,true) and returns the result using
getS2 . |
void |
exit()
Closes the interface to the R interpreter.
|
java.lang.Object[] |
get(java.lang.String identifier)
Returns the value of identifier in the R interpreter.
|
double |
getD0(java.lang.String identifier)
Calls get(identifier,false) and converts the result to a double.
|
double[] |
getD1(java.lang.String identifier)
Calls get(identifier,false) and converts the result to a double[].
|
double[][] |
getD2(java.lang.String identifier)
Calls get(identifier,false) and converts the result to a double[][].
|
int |
getI0(java.lang.String identifier)
Calls get(identifier,false) and converts the result to an int.
|
int[] |
getI1(java.lang.String identifier)
Calls get(identifier,false) and converts the result to an int[].
|
int[][] |
getI2(java.lang.String identifier)
Calls get(identifier,false) and converts the result to an int[][].
|
boolean |
getL0(java.lang.String identifier)
Calls get(identifier,false) and converts the result to a boolean.
|
boolean[] |
getL1(java.lang.String identifier)
Calls get(identifier,false) and converts the result to a boolean[].
|
boolean[][] |
getL2(java.lang.String identifier)
Calls get(identifier,false) and converts the result to a boolean[][].
|
byte |
getR0(java.lang.String identifier)
Calls get(identifier,false) and converts the result to a byte.
|
byte[] |
getR1(java.lang.String identifier)
Calls get(identifier,false) and converts the result to a byte[].
|
byte[][] |
getR2(java.lang.String identifier)
Calls getR2(identifier,false) and converts the result to an byte[][].
|
java.lang.String |
getS0(java.lang.String identifier)
Calls get(identifier,false) and converts the result to a String.
|
java.lang.String[] |
getS1(java.lang.String identifier)
Calls get(identifier,false) and converts the result to a String[].
|
java.lang.String[][] |
getS2(java.lang.String identifier)
Calls get(identifier,false) and converts the result to a String[][].
|
void |
set(java.lang.String identifier,
java.lang.Object value)
Equivalent to calling set(identifier, value, "", true).
|
void |
set(java.lang.String identifier,
java.lang.Object value,
java.lang.String index,
boolean singleBrackets)
Assigns value to a variable identifier in the R interpreter.
|
public RClient4Java()
public RClient4Java(java.lang.String rCmd)
public RClient4Java(java.lang.String rCmd, boolean serializeOutput)
public RClient4Java(java.lang.String rCmd, boolean serializeOutput, boolean rowMajor)
public RClient4Java(java.lang.String rCmd, boolean serializeOutput, boolean rowMajor, int port)
public RClient4Java(java.lang.String rCmd, boolean serializeOutput, boolean rowMajor, int port, boolean debug)
public void exit()
public void eval(java.lang.String snippet)
snippet
- The snippet to be evaluated.public java.lang.Object eval(java.lang.String snippet, boolean evalOnly, boolean asReference)
evalD0
).snippet
- The snippet to be evaluated.evalOnly
- An indicator of whether the snippet should be evaluated only, or if otehr steps should be performed.asReference
- If false and the conversion is supported, the result is converted. Otherwise, a reference is returned.
e result is
converted if `asReference` is `false` and the conversion is supported, otherwise a reference is returned.public int evalI0(java.lang.String snippet)
getI0
.snippet
- The snippet to be evaluated.public double evalD0(java.lang.String snippet)
getD0
.snippet
- The snippet to be evaluated.public boolean evalL0(java.lang.String snippet)
getL0
.snippet
- The snippet to be evaluated.public java.lang.String evalS0(java.lang.String snippet)
getS0
.snippet
- The snippet to be evaluated.public byte evalR0(java.lang.String snippet)
getR0
.snippet
- The snippet to be evaluated.public int[] evalI1(java.lang.String snippet)
getI1
.snippet
- The snippet to be evaluated.public double[] evalD1(java.lang.String snippet)
getD1
.snippet
- The snippet to be evaluated.public boolean[] evalL1(java.lang.String snippet)
getL1
.snippet
- The snippet to be evaluated.public java.lang.String[] evalS1(java.lang.String snippet)
getS1
.snippet
- The snippet to be evaluated.public byte[] evalR1(java.lang.String snippet)
getR1
.snippet
- The snippet to be evaluated.public int[][] evalI2(java.lang.String snippet)
getI2
.snippet
- The snippet to be evaluated.public double[][] evalD2(java.lang.String snippet)
getD2
.snippet
- The snippet to be evaluated.public boolean[][] evalL2(java.lang.String snippet)
getL2
.snippet
- The snippet to be evaluated.public java.lang.String[][] evalS2(java.lang.String snippet)
getS2
.snippet
- The snippet to be evaluated.public byte[][] evalR2(java.lang.String snippet)
getR2
.snippet
- The snippet to be evaluated.public void set(java.lang.String identifier, java.lang.Object value)
identifier
- The string of input to be set.value
- The value of the string.public void set(java.lang.String identifier, java.lang.Object value, java.lang.String index, boolean singleBrackets)
identifier
- The string of input to be set.value
- The value of the string.index
- A string containing the index values.singleBrackets
- A Boolean indicating whether or not to use single brackets.public java.lang.Object[] get(java.lang.String identifier)
getD0
).identifier
- The string of input to be set.public int getI0(java.lang.String identifier)
identifier
- The string to be evaluated.public double getD0(java.lang.String identifier)
identifier
- The string to be evaluated.public boolean getL0(java.lang.String identifier)
identifier
- The string to be evaluated.public java.lang.String getS0(java.lang.String identifier)
identifier
- The string to be evaluated.public byte getR0(java.lang.String identifier)
identifier
- The string to be evaluated.public int[] getI1(java.lang.String identifier)
identifier
- The string to be evaluated.public double[] getD1(java.lang.String identifier)
identifier
- The string to be evaluated.public boolean[] getL1(java.lang.String identifier)
identifier
- The string to be evaluated.public java.lang.String[] getS1(java.lang.String identifier)
identifier
- The string to be evaluated.public byte[] getR1(java.lang.String identifier)
identifier
- The string to be evaluated.public int[][] getI2(java.lang.String identifier)
identifier
- The string to be evaluated.public double[][] getD2(java.lang.String identifier)
identifier
- The string to be evaluated.public boolean[][] getL2(java.lang.String identifier)
identifier
- The string to be evaluated.public java.lang.String[][] getS2(java.lang.String identifier)
identifier
- The string to be evaluated.public byte[][] getR2(java.lang.String identifier)
identifier
- The string to be evaluated.