GPLOTプロシジャで表示されるスプライン曲線上の値を、SAS/IMLを用いてデータセットに出力する方法
[OS] ALL
[リリース] 6.11 以降
[キーワード] SPLINE
[質問]SAS/GRAPHソフトウェアのGPLOTプロシジャを使用して、スプライン曲線を表示しました。この曲線上の座標を、SAS/IMLを用いてSASデータセットに出力する方法はありますか。 GPLOTプロシジャのプログラム例: proc gplot data=data1; plot y*x; symbol i=spline; run; quit;
[回答]SAS/IMLでは、サブルーチンSPLINEを用いて実現できます。 /* サンプルデータ */ data test; do x = 1 to 100 by 2; y = log(x) + sin(x / 10) + normal(7); output; end; run; /* 事前にソートする(ソートされていない場合) */ proc sort data=test; by x; run; proc iml; use test; read all into mat; close test; /* 行列fittedに曲線上の点を50個出力 */ call spline(fitted,mat,,,50); /* 出力データセット、変数名の指定 */ create fit var{x y}; append from fitted; close fit; quit; なお、SAS/STATソフトウェアを利用した方法については、下記のFAQをご参照ください。 |