本文整理汇总了Java中org.rosuda.REngine.REXP.asDoubles方法的典型用法代码示例。如果您正苦于以下问题:Java REXP.asDoubles方法的具体用法?Java REXP.asDoubles怎么用?Java REXP.asDoubles使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.rosuda.REngine.REXP
的用法示例。
在下文中一共展示了REXP.asDoubles方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: convertOutputRserve
import org.rosuda.REngine.REXP; //导入方法依赖的package包/类
public double[][][] convertOutputRserve (REXP output) throws REXPMismatchException{
int[] dim = output.dim();
double[][][] result = new double[dim[0]][dim[1]][dim[2]];
int h = -1;
for (int k = 0; k < dim[2]; k++) {
for (int j = 0; j < dim[1]; j++) {
for (int i = 0; i < dim[0]; i++) {
h++;
result[i][j][k] = output.asDoubles()[h];
}
}
}
return result;
}
示例2: getDoubleVector
import org.rosuda.REngine.REXP; //导入方法依赖的package包/类
@Override
public double[] getDoubleVector(final String variable) {
try {
final REXP rexp = engine.unwrap().eval(variable);
if (allIsNa(rexp)) {
return null;
} else {
return rexp.asDoubles();
}
} catch (final REXPMismatchException e) {
throw new RuntimeException(e);
}
}
示例3: eval
import org.rosuda.REngine.REXP; //导入方法依赖的package包/类
@Override
public <T> T eval(String command) throws FOSException {
try {
if(logger.isTraceEnabled()) {
logger.trace(command);
}
connection.assign("trycodeblock", command);
REXP result = connection.parseAndEval("try(eval(parse(text=trycodeblock)),silent=TRUE)");
if (result != null && result.inherits("try-error")) {
throw new FOSException(result.toDebugString());
}
if (result == null || result.isNull()) {
return null;
} else if( result.isVector() && result.isNumeric()) {
return (T) result.asDoubles();
} else if (result.isInteger()) {
return (T) new Integer(result.asInteger());
} else if (result.isNumeric()) {
return (T) new Double(result.asDouble());
} else if (result.isString()) {
return (T) result.asString();
}
return null;
} catch (Exception e) {
throw new FOSException("Error executing R script.", e);
}
}