RSM, Response Surface Methodology(応答曲面法)とは回帰分析の一種で、目的とする変数に対する複数の因子の影響について、有限のデータから連続的な表面として近似させたものです。 複数変数の最適組み合わせを導くのに使われる実験計画法 (DOE) です。今までの分散分析中心の実験計画法から、ひとまず RSM へ話題を移します。
パッケージ rsm
CRAN からパッケージ rsm をインストールして利用できるようにします。
R を起動して、以下のようにして rsm パケージをインストールします。
> install.packages("rsm")
Installing package into ‘/home/bitwalk/R/x86_64-redhat-linux-gnu-library/3.0’
(as ‘lib’ is unspecified)
--- このセッションで使うために、CRAN のミラーサイトを選んでください ---
右のように CRAN のミラーサイト一覧が GUI で表示されるので、近いと思われる適当なサイトを選択して、ダブルクリックあるいは下の「OK」ボタンをクリックします。。
URL 'http://cran.ism.ac.jp/src/contrib/rsm_2.04.tar.gz' を試しています Content type 'application/x-gzip' length 1013015 bytes (989 Kb) 開かれた URL ================================================== downloaded 989 Kb * installing *source* package ‘rsm’ ... ** パッケージ ‘rsm’ の解凍および MD5 サムの検証に成功しました ** R ** inst ** preparing package for lazy loading ** help *** installing help indices converting help for package ‘rsm’ finding HTML links ... 完了 ChemReact html FO html bbd html ccd html ccd.pick html codata html coded.data html contour.lm html djoin html heli html model.data html rsm-package html rsm html steepest html varfcn html ** building package indices ** installing vignettes ** testing if installed package can be loaded * DONE (rsm) ダウンロードされたパッケージは、以下にあります ‘/tmp/RtmpSQBlvV/downloaded_packages’
以上で無事、パッケージ rsm がインストールされましたので、早速、rsm のマニュアルで紹介されているサンプルから、今後使うことになるプロットを紹介しましょう。
> library('rsm') > heli.rsm <- rsm (ave ~ block + SO(x1, x2, x3, x4), data = heli) > heli.rsm Call: rsm(formula = ave ~ block + SO(x1, x2, x3, x4), data = heli) Coefficients: (Intercept) block2 FO(x1, x2, x3, x4)x1 372.80000 -2.95000 -0.08333 FO(x1, x2, x3, x4)x2 FO(x1, x2, x3, x4)x3 FO(x1, x2, x3, x4)x4 5.08333 0.25000 -6.08333 TWI(x1, x2, x3, x4)x1:x2 TWI(x1, x2, x3, x4)x1:x3 TWI(x1, x2, x3, x4)x1:x4 -2.87500 -3.75000 4.37500 TWI(x1, x2, x3, x4)x2:x3 TWI(x1, x2, x3, x4)x2:x4 TWI(x1, x2, x3, x4)x3:x4 4.62500 -1.50000 -2.12500 PQ(x1, x2, x3, x4)x1^2 PQ(x1, x2, x3, x4)x2^2 PQ(x1, x2, x3, x4)x3^2 -2.03750 -1.66250 -2.53750 PQ(x1, x2, x3, x4)x4^2 -0.16250 > par (mfrow = c (2,3)) > contour (heli.rsm, ~x1+x2+x3+x4, at = xs(heli.rsm))
> contour (heli.rsm, ~x1+x2+x3+x4, at = list(block="2"), + atpos = 0, image = TRUE)
> persp (heli.rsm, ~x1+x2+x3+x4, at = xs(heli.rsm))
> persp (heli.rsm, ~x1+x2+x3+x4, at = xs(heli.rsm), + contours = "col", col = rainbow(40), zlab = "Flight time", + xlabs = c("Wing area", "Wing length", "Body width", "Body length")) >
詳細な使い方については、今後、サンプルを使って説明していく予定です。
0 件のコメント:
コメントを投稿