2007年05月28日

Posted by okh
at 09:23
Comments(18)

2007年5月28日

前置き

琉大では3年毎に見直される情報システムだが、今年度がその年に当たってしまった。システムの改善は望ましいが、統計処理システムがSASからRに変わった。それはそれで好ましいが、Rはfreeなのだから各自でインストール可能だし、むしろSを導入してもらいたかったところだ。ただこれまでのMapleとMatlabにMathematicaが追加されたのは素晴らしい。一応、数式処理ソフトは定番が揃ったことになる。
何とかならんものかと情報センターに問い合わせると、SASは医学部の実習室でないと使えないと、あっさり断られた。医療や薬学、保健分野でのSASの実績は大きいが、最近は保険、金融でもB=Sモデルやオプション、金融商品の設計のために基幹システムとして導入されているケースも多い。またGISや最適化問題でも多くの資産が蓄積されている。琉大では農学の新城先生はテキストの発行など第1人者でもある。そのSASが今年から、実習では使えないというのは非常に残念。とはいえ直接センターに行けばCDを借りることができます。興味とやる気のある方はチャレンジしてみてください。

先週やったこと。
対話型でRを使用したが、直接、複数行を入力したり、ファイル入力もできる。
以下は先週実行したコードである。
uri=c(8,9,10,12,11,13)
kou=c(5,5,7,5,8,12)
sal=c(6,8,10,12,12,12)
est1<-lm(uri~kou)
est2<-lm(uri~sal)
summary(est1)
summary(est2)
plot(kou,uri)
lines(kou,fitted(est1))

uri(売上),kou(広告費),sal(セールスマン数)の3変数を定義し、単回帰とグラフのプロットを試した。

今回やること
単回帰は説明変数が一変数だが、重回帰は2変数以上になる。

単回帰:y=a+b・x
重回帰:y=a+b・x+c・z+・・・

直感的な違いは散布図での表示が複雑になることだろうか。

ようは説明変数がたくさんあるということ。

先週使用したデータで重回帰をやってみる。
売上=f(広告費、サラリーマン数)
式:uri=定数項+係数1×広告費+係数2×セールスマン数

推計する前に変数の関係を確認してみる。
・相関行列

まずデータセットを作成する。3変数を一組として扱う。これは変数やデータ数が多くなると必須となる。

支店別データなので、データセット名をsitenとしてみる。

siten<-data.frame(uri,kou,sal)
cor(siten)

これで相関行列が出力される。桁数を指定するときはround関数を用いる。
round(cor(siten),4)
数値ではイメージしにくいのでマトリックスプロットで見る。
pairs(siten)

pairs関数がマトリックスプロット用の関数で、この他にも様々なオプションがある。

重回帰は次のように指定する。
sitenlm<-lm(uri~.,data=siten)
summary(sitenlm)

見方は、変数が1個増えた以外、単回帰と同じである。

手順のまとめ:
1.データセットの定義
2.相関行列、マトリックスプロットで変数間の関係をチェック
3.重回帰式の推計

次のデータを用いて、上の手順を実行し、マトリックスプロットを出力して、各自のブログにupしてください。また、記事の中でsummaryで出力された内容について評価(コメント)してください。

weight<-c(50,60,65,65,70,75,80,85,90,95)
height<-c(165,170,172,175,170,172,183,187,180,185)
waist<-c(65,68,70,65,80,85,78,79,95,97)

このデータでbodyというデータセットを定義する。
被説明変数はweightにします。

++++++++++++++++++++++++++++++++++
++++++++++++++++++++++++++++++++++
応用編

回帰診断

結果の解釈について、このモデルが使えるか否か、を判断する材料を示す。
これは最近の回帰分析では流行の手法なので、簡単に触れておくが、詳細は後日、説明します。
方法は回帰結果をプロットするだけですが、4つのグラフが出力されるので、画面を4分割します。

画面の分割
par(mfrow=c(2,2))
結果の出力
plot(sitenlm)







この記事へのコメント

e012345
2007年5月28日
http://e012345.ti-da.net
weight<-c(50,60,65,65,70,75,80,85,90,95)
height<-c(165,170,172,175,170,172,183,187,180,185)
west<-c(65,68,70,65,80,85,78,79,95,97)
body<-data.frame(weight,height,west)
cor(body)
pairs(body)
bodylm<-lm(weight~.,data=body)
summary(bodylm)

Posted by e012345 at 2007年05月28日 13:41

2007年5月28日
http://e051304.ti-da.net/

決定係数が高いので、信頼度が高い。

Posted by e051304 at 2007年05月28日 13:49

2007/5/28
http://e051192.ti-da.net/

t値が高いのでモデルは信用できる。

Posted by e051192 at 2007年05月28日 13:52

2007年5月28日
http://e051151.ti-da.net/

Posted by e051151 at 2007年05月28日 13:55

2007年5月28日
http://e051186.ti-da.net/

Posted by e051186 at 2007年05月28日 13:55

2007年5月28日
http://e051171.ti-da.net/

Posted by e051171 at 2007年05月28日 13:55

2007年5月28日
http://e051152.ti-da.net/

Posted by e051152 at 2007年05月28日 13:55

2007年5月28日
http://e051275.ti-da.net/

Posted by e051275 at 2007年05月28日 13:55

2007年5月28日
http://e051292.ti-da.net

Posted by e051292 at 2007年05月28日 13:57

e051246です。

Posted by e051246 at 2007年05月28日 14:01

5月28日 情報処理演習Ⅲ

Posted by e051220 at 2007年05月28日 14:02

5月27日

Posted by e051226 at 2007年05月28日 14:02

2007年5月28日
http://e051311.ti-da.net

Posted by e051311 at 2007年05月28日 14:02

2007年5月28日
http://e051303.ti-da.net/

Posted by e051303 at 2007年05月28日 14:03

2007年5月28日
http://e051286.ti-da.net/
t値が高いので信頼出来る。

Posted by 051286K at 2007年05月28日 14:06

2007年5月28日
http://e051151.ti-da.net/

Posted by 0511104J at 2007年05月28日 14:08

2007年5月28日
http://e051303.ti-da.net/

Posted by e051303 at 2007年05月28日 14:08

2007年5月28日
e051197
http://e051197.ti-da.net/

Posted by e051197 at 2007年05月28日 14:12
 
<ご注意>
書き込まれた内容は公開され、ブログの持ち主だけが削除できます。

pagetop▲