www.crosshyou.infoの続きです。
前回は各変数間の相関係数を調べました。
今回は、回帰分析をして不動産価格を予測するモデルを作成します。
はじめにpairs関数で散布図マトリックスを描きます。
一番下の列がY(不動産価格)が縦軸でその他の変数が横軸の散布図です。
それではR言語のlm関数で回帰分析をします。
最初は交互作用項、2乗項のある複雑なモデルからスタートして、段階的に単純化していきます。
p-value < 2.2e-16 と0.05よりも小さいので有意なモデルです。
step関数でこのモデルを単純化します。
X2:X6の交互作用はp-valueが0.134なので削除してみます。
update関数でlm2からX2:X6を削除したモデルlm3を作成し、anova関数でlm2とlm3を比較しました。Pr(<F)が0.134と0.05よりも大きいですからlm2とlm3では有意な違いはありません。より単純なlm3のほうを採用します。
X6も削除しましょう。
Pr(>F)の値が0.949なのでlm3とlm4は有意な違いはありません。
より単純なlm4を採用します。summary関数でlm4を見てみましょう。
これですべての項目のPr(>|t|)が0.05以下になりました。Estimateの列が係数ですが、e+04などとわかりにくいので、coef関数とround関数でわかりやすく表示してみます。
だいぶわかりやすくなりました。
整理しましょう。
Y = -35895 + 6.329 * X1 - 0.971 * X2 + 0.018 * X2^2 + 5.565 * X3 + 2466.322 * X4 + 929.265 * X5 - 0.001 * X3 * X4 - 0.223 * X3 * X5 - 98.711 * X4 * X5
です。
Y:不動産価格
X1:取引日
X2:築年数
X3:最寄りの駅までの距離
X4:近くのコンビニエンスストアの数
X5:緯度
です。
以外にも最寄りの駅までの距離が長いほど不動産価格が高いのですね。
これは、YとX3だけで分析したのとは正反対の結果です。
最寄りの駅の距離が近いから不動産価格が高いのではなくて、最寄りの駅までの距離が近いとコンビニエンスストアの数が多かったりするから不動産価格が高いのですね。
今回は以上です。