公開日: 09/09/2026

Rの例

この節では、Rへのデータテーブル送信、Rでのオブジェクト作成などの例を紹介します。

Rにデータテーブルを送る

次のJSLの例は、R接続を開始し、データテーブルをRに送り、それをログに印刷し、最後にR接続を閉じます。

R Init();
dt = Open( "$SAMPLE_DATA/Big Class.jmp", invisible );
R Send( dt ); // dtという開いたデータテーブルをRに送る
R Submit( "print( dt )" );

Rでのオブジェクトの作成

次のJSLの例は、R接続を開始し、Rオブジェクトを作成し、そのオブジェクトをJMPで取得し、最後にR接続を閉じます。

R Init();
R Submit(
	"
	L3 <- LETTERS[1:3]
	d <- data.frame(cbind(x=1, y=1:15), Group=sample(L3, 15, repl=TRUE))
"
);
R Get( d ) << NewDataView;

Rの関数とグラフの使用

次のJSLの例は、R接続を開始し、グラフの出力先としてファイル名を設定し、そのファイルにプロットを書き込み、ファイルを開いてプロットを取得します。

R Init();
img_path = Get Path Variable( "TEMP" ) || "r_plot.png";
R Execute( {img_path}, {}, "\[
png(img_path)
plot(1:10)
dev.off()
]\" );
plot = Open( img_path );
rc = Delete File( img_path );
 

R内での簡単な行列の足し算

次のJSLの例は、R接続を開始し、まず、1つの行列をJMPからRに送ります。次に、Rで、もう1つの行列を作成します。そして、この2つの行列を足し合わせた行列をJMPに送り、最後にR接続を閉じます。

R Init();
X = J( 2, 2, 1 );
R Send( X );
R Submit(
	"
	X                                     #Xをログに印刷する
	Y <- matrix(1:4, nrow=2, byrow=TRUE)  #2x2の行列オブジェクトYを作成する
	Y                                     #Yをログに印刷する
	Z <- X + Y #行列オブジェクトZはXとYを1つにしたもの
"
);
Z = R Get( Z );
Show( Z );

ブートストラップの例

サンプルスクリプトフォルダ内のJMPtoR_bootstrap.jslは、Rのライブラリを利用して、JMPにおいてブートストラップを実行します。

このスクリプトは、まずユーザに対し、分析対象の変数を指定するためのウィンドウを、JMPにおいて表示します。このウィンドウで、信頼区間を求めたい統計量も選択します。その後、JSLのRインターフェースを使って、データがRに送られます。

そして、Rのbootパッケージにおけるboot()関数およびboot.ci()関数によって、各ブートストラップ標本の統計量とブートストラップ信頼区間が計算されます。

結果はJMPに戻され、JMPの「一変量の分布」プラットフォームを使って表示されます。

より詳細な情報が必要な場合や、質問があるときは、JMPユーザーコミュニティで答えを見つけましょう (community.jmp.com).