スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

重回帰分析

前回は単回帰分析の内容とRでの実装方法を勉強したので、今日は重回帰分析を勉強したいと思います。

■ビジネスにおける適応例
重回帰分析では、複数の要因が結果に対して効いているのか、いないのかも判断できるので、モデルを作るだけではなく必要な要因は何なのか、それが結果に対してどのように関係しているのかを明らかにできる。そのため、ビジネスでも複数の要因を説明変数として売り上げに寄与している要因を調べるなどの使い方がされている。

■重回帰分析のおおまかな処理の流れ
①モデルの当てはまりの良さの確認
→自由度調整済み決定係数を確認(クロスセクションデータ:0.5以上、タイムシリーズデータ:0.7以上であれば当てはまりがよい)
※重回帰分析の場合、説明変数を増やせば、決定係数が高くなるという性質があります。そこで、重回帰分析のモデルの当てはまりの良さを図る指標としては自由度調整済み決定係数を使用します。
②各変数の統計的優位性の確認
→各変数のP値を確認(ここで算出されるP値は目的変数と各説明変数でt検定を実施し、「説明変数の影響力は0である」という帰無仮説が棄却される際の危険率)
③各変数の偏回帰係数を解釈
→符号条件が理論的におかしくないかを確認

このながれにそってRのairqualityをサンプルデータとして重回帰分析を実施。
オゾン濃度に対してどの変数が影響しているかを分析してみることにします。

■Rで重回帰
airqualityのデータの中身を確認してみる。
#データの読み込み
data(airquality)
head(airquality)

  Ozone Solar.R Wind Temp Month Day
1 41 190 7.4 67 5 1
2 36 118 8.0 72 5 2
3 12 149 12.6 74 5 3
4 18 313 11.5 62 5 4
5 NA NA 14.3 56 5 5
6 28 NA 14.9 66 5 6

早速、オゾンの量を目的変数、残りの太陽光、風、気温を説明変数にして重回帰のモデルを作成。どの説明変数の組み合わせを使用した際に一番制度の高いモデルが作れるのかわからないので、step関数を使用してステップワイズ法でAICが一番小さな値になるモデルを採用することにします。
#オゾン濃度を説明するモデルを作成する
#年月のデータを省いて分析
airq <- airquality[,1:4]
#重回帰分析のモデルを作成
airq.lm <- lm(Ozone~.,data=airq)
#ステップワイズ法でモデルを評価
step(airq.lm)

Start:  AIC=681.7
Ozone ~ Solar.R + Wind + Temp

Df Sum of Sq RSS AIC
<none> 48003 682
- Solar.R 1 2986 50989 686
- Wind 1 11642 59644 704
- Temp 1 19050 67053 717


Call:
lm(formula = Ozone ~ Solar.R + Wind + Temp, data = airq)

Coefficients:
(Intercept) Solar.R Wind Temp
-64.3421 0.0598 -3.3336 1.6521

今回は、すべての説明変数を使用した場合が一番AICが小さいモデルになるみたいですね。
では、ここから先ほどの「重回帰 
分析のおおまかな処理の流れ」に従ってモデルの評価、結果の確認をしたいと思います。
#基本等計量を確認
summary(airq.lm)


Call:
lm(formula = Ozone ~ ., data = airq)

Residuals:
Min 1Q Median 3Q Max
-40.48 -14.22 -3.55 10.10 95.62

Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -64.3421 23.0547 -2.79 0.0062 **
Solar.R 0.0598 0.0232 2.58 0.0112 *
Wind -3.3336 0.6544 -5.09 1.5e-06 ***
Temp 1.6521 0.2535 6.52 2.4e-09 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 21.2 on 107 degrees of freedom
(42 observations deleted due to missingness)
Multiple R-squared: 0.606, Adjusted R-squared: 0.595
F-statistic: 54.8 on 3 and 107 DF, p-value: <2e-16

①モデルの当てはまりの良さの確認
自由度調整済み決定係数の値が0.595>0.5なので、当てはまりの良さ的には問題なさそうです。

②各変数の統計的優位性の確認
Wind、Tempについては、p値が非常に小さな値になっているので有効な変数みたいです。ただ、Solar.Rのp値が0.0112>0.005なので、この変数については、信頼度は薄そうです。とはいえ、ステップワイズ法でAICの確認もしているのでモデルとしてはSolar.Rを説明変数に入れておいた方が当てはまりのよいモデルになるようです。

③各変数の偏回帰係数を解釈
オゾン濃度には気温がプラスの影響を、風速がマイナスの影響を与えていることが分かりますね。


■参考
ビジネスデータ分析研究室
重回帰分析
Rと重回帰分析
http://www.aoni.waseda.jp/abek/document/regression-2.html
スポンサーサイト

コメントの投稿

非公開コメント

プロフィール

HitTips

Author:HitTips
FC2ブログへようこそ!

最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QR
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。