Можно ли сделать несколько простых вычислений в R с использованием входных данных из Java-программы и получить ответ в эту Java-программу?
Типичным примером такого обмена данными между Java и R является вычисление функции распределения вероятностей (PDF) массива чисел (скажем, массива Java double[]
).
Изнутри класса Java массив должен передаваться в R через интерфейс Java / R (JRI), и результатом вычисления должен быть не графический график (как JRI будет делать в JFrame), а другой массив значений (или аналогичной структуры данных Java), которые можно извлечь из того же класса Java для дальнейшей обработки.
Часть назначения JRI будет выглядеть примерно так:
Rengine re=new Rengine(new String [] {"--vanilla"}, false, null);
if (!re.waitForR())
{
System.out.println ("Cannot load R");
return;
}
double[] values = ... // The data values
re.assign("data", values);
Итак, вопрос заключается в том, можно ли обработать приведенный выше массив data
в R, как уже описано (например, для PDF), с результатами, возвращаемыми обратно в вызывающий класс Java, вместо графического построения графика R.
Возможно ли это, и если да, есть ли пример кода, демонстрирующий это?