回帰分析と機械学習で中央線の高コスパ物件を探す(データ可視化+変数選択)
前回の記事の続きです。
今回は、具体的にデータの中身を見ていくために可視化を行います。
また、主に多重共線性をなくすために変数選択を行います。
データの可視化
物件数
まずは、各駅ごとの物件数を見ます。
なんとなく納得する物件数です。 強いて言えば、阿佐ヶ谷駅と武蔵境駅が思っていたより少ないです。
家賃
次は各駅ごとの家賃の分布です。
箱ひげ図を描いてみます。
外れ値が多いです。ただ、すごい高い物件があってもおかしくはないと思うので、外れ値検定を行わずに描画してみます。
高円寺、吉祥寺、国立に高級物件があります。
国立は富裕層が住んでいるイメージがありますし、吉祥寺は住みたい街上位ですから何となくわかるものの、高円寺にも高級物件があるんですね。
また、中央値で比較できるように、描画範囲を絞ります。
中野〜三鷹(阿佐ヶ谷以外)までが家賃高めです。
また、三鷹以西だと立川が高めです。
中央特快の停まる国分寺が安いのは意外です。
徒歩時間と家賃の関係
駅からの徒歩距離が長いほど、家賃は安くなると思うので、横軸が徒歩時間で縦軸が家賃の散布図を描いてみます。
ここで気づきましたが、徒歩60分とかの物件は最寄りとは言わない気がします。
よって、徒歩30分より遠い物件は今回の解析から除去することにします。
前回の記事の前処理の部分に以下のコードを追加しておきます。
#徒歩30分より遠い物件は除去 df = df[(df['徒歩'] <= 31)]
また、徒歩ほぼ0分で異常に家賃高い物件がありますが、一応確認しておきます。
うーん、高円寺でこんなに高いのか?
でも入力ミスでもなさそうなので、このままにしておきます。
変数選択
次に、多重共線性をなくすため変数選択を行います。
具体的には、各変数同士の相関係数を確認します。
下図の、”間取り”は部屋数、”間取りDK”は間取りにDKを含むか(”間取りK”なども同様)です。
部屋数が多ければ面積も大きそうなので、間取りと専有面積の相関が高いです。
DKが有ればKが無いのが普通なので、間取りDKと間取りKの負の相関も高いです。
他の変数との相関も考慮し、専有面積と間取りKをモデルの入力変数から除去することにします。
この辺は、触発されたブログと同じです。
ここまでで、データの特徴と変数選択ができたので、次は予測モデルを作ります。