差分
このページの2つのバージョン間の差分を表示します。
次のリビジョン | 前のリビジョン | ||
mselab:2014:stat:week2:r2 [2015/01/20 11:10] – created watalu | mselab:2014:stat:week2:r2 [2015/01/20 11:55] (現在) – watalu | ||
---|---|---|---|
行 55: | 行 55: | ||
データ解析に基づいて、セールスの方針を提案せよ。 | データ解析に基づいて、セールスの方針を提案せよ。 | ||
+ | |||
+ | === 追加メモ === | ||
+ | == 関数の出力の保存と参照 == | ||
+ | 各関数(コマンド、分析プログラム、分析ツール、分析手法)を実行した結果を、オブジェクトとして保存できる。 | ||
+ | |||
+ | < | ||
+ | bank.lda <- lda(y~., data=bank) | ||
+ | bank.qda <- lda(y~., data=bank) | ||
+ | bank.rpart <- rpart(y~., data=bank) | ||
+ | </ | ||
+ | |||
+ | 結果を表示するには、単にオブジェクト名を入力するか、もしくはprint関数に表示してもらう。 | ||
+ | |||
+ | < | ||
+ | bank.lda | ||
+ | print(bank.lda) | ||
+ | </ | ||
+ | |||
+ | 上の二行は同じ内容が表示されるので、どちらかでよい。 | ||
+ | |||
+ | summary関数をかませると、追加の要約情報が表示されることがある。 | ||
+ | |||
+ | < | ||
+ | summary(bank.lda) | ||
+ | </ | ||
+ | |||
+ | これははずれ。上の三つの解析で必要な表示は、たとえば次のとおり。 | ||
+ | |||
+ | < | ||
+ | print(bank.lda) | ||
+ | print(bank.qda) | ||
+ | print(bank.rpart) | ||
+ | summary(bank.rpart) | ||
+ | </ | ||
+ | |||
+ | == グラフ描画 == | ||
+ | |||
+ | plot関数がそれぞれの関数ごとに、結果を表すグラフを描いてくれる、ことがある。 | ||
+ | |||
+ | < | ||
+ | plot(bank.lda) | ||
+ | plot(bank.qda) | ||
+ | plot(bank.rpart) | ||
+ | </ | ||
+ | |||
+ | 決定木に関するグラフは、plot関数のみでは完結しない。plot関数は樹形の絵を描いてくれるだけで、分割の情報をtext関数に補わせて初めて、決定木、という図を得る。 | ||
+ | |||
+ | < | ||
+ | plot(bank.rpart) | ||
+ | text(bank.rpart) | ||
+ | </ | ||
+ | |||
+ | 文字が大きすぎるときは、グラフを描く前に文字の倍率を変えるように指示する。 | ||
+ | |||
+ | < | ||
+ | par(cex=0.7) | ||
+ | plot(bank.rpart) | ||
+ | text(bank.rpart) | ||
+ | par(cex=1.0) | ||
+ | </ | ||
+ | |||
+ | 個人的には、グラフ描画が終わったら倍率を1.0に戻すようにしている。 | ||
+ | |||
+ | またリンク先を参考に、plot関数にオプションを追加すると、見た目が変わる。 | ||
+ | |||
+ | < | ||
+ | par(cex=0.7) | ||
+ | plot(bank.rpart, | ||
+ | text(bank.rpart) | ||
+ | par(cex=1.0) | ||
+ | </ | ||
+ | |||
+ | == rpart.plot: | ||
+ | |||
+ | さらに次のパッケージとコマンドを使うと、もっと綺麗な図を描いてくれる。 | ||
+ | |||
+ | < | ||
+ | install.packages(c(" | ||
+ | library(rpart.plot) | ||
+ | prp(bank.rpart, | ||
+ | </ | ||
+ | |||
+ | typeとextraはいくつか選べるようである。 | ||
+ | |||
+ | == tree: | ||
+ | |||
+ | ところでリンク先には、treeという関数も紹介されている。これを利用するには、同名のパッケージのインストールと読み込みが必要となる。 | ||
+ | < | ||
+ | install.packages(c(" | ||
+ | library(tree) | ||
+ | tree(y~., data=bank) | ||
+ | bank.tree <- tree(y~., data=bank) | ||
+ | plot(bank.tree) | ||
+ | text(bank.tree) | ||
+ | </ | ||
+ | |||
+ | |||