R是一個用于統(tǒng)計計算和統(tǒng)計制圖的優(yōu)秀工具。其功能包括:數(shù)據(jù)存儲和處理系統(tǒng);數(shù)組運算工具(其向量、矩陣運算方面功能尤其強大);完整連貫的統(tǒng)計分析工具;優(yōu)秀的統(tǒng)計制圖功能;簡便而強大的編程語言:可操縱數(shù)據(jù)的輸入和輸入,可實現(xiàn)分支、循環(huán),用戶可自定義功能 。
而Java語言是目前最流行的語言,當然對我自己來說也是最熟悉的語言了。所以今天嘗試通過java來調(diào)用R函數(shù)為下面通過調(diào)用數(shù)學函數(shù)實現(xiàn)業(yè)務功能做基礎(chǔ)。
目前我在windows xp上做測試。
1. 首先需要下載R的windows安裝程序,地址為
http://cran.r-project.org/,選擇base進行下載。然后安裝就可以了。
2. 安裝Rserve,可以通過R界面中的命令行輸入:install.packages("Rserve")或者在R界面上選擇:程序包->安裝程序包,然后找到Rserve進行安裝。
3. 啟動Rserve, 在R界面中的命令行中輸入:library(Rserve)來加載Rserve,然后輸入Rserve()進行啟動服務。
到此Rserve已經(jīng)配置并啟動好,下面輪到Java程序調(diào)用了。
1. 下載Rserve提供的jar包,打開
http://www.rforge.net/Rserve/files/,下載
REngine.jar和
RserveEngine.jar,然后放到自己的項目中,并引入。
2. 編輯代碼如下:
import org.rosuda.REngine.REXP;
import org.rosuda.REngine.REXPMismatchException;
import org.rosuda.REngine.Rserve.RConnection;
import org.rosuda.REngine.Rserve.RserveException;
public class RTest {
/**
* @param args
* @author Zhou Rui
* @throws RserveException
* @throws REXPMismatchException
*/
public static void main(String[] args) throws RserveException, REXPMismatchException {
RConnection c = new RConnection();
REXP x = c.eval("R.version.string");
System.out.println(x.asString());
}
}
運行,輸入結(jié)果:
R version 2.12.2 (2011-02-25)
posted on 2011-03-30 10:57
周銳 閱讀(2874)
評論(0) 編輯 收藏 所屬分類:
Java 、
R