suumoの物件分析 #7 「賃貸の家賃可視化と家賃パラメータの重要度調査をやってみる ~神奈川編~」

スポンサーリンク
tech系(python)
スポンサーリンク

はじめに

花の都、東京。

首都、東京23区に隣接する3つの県がある。

神奈川県、千葉県、埼玉県である。

これら3つの県は東京23区へのアクセスが容易となっており、ベットタウンが多くある。

東京23区は住むのはハードルが高いので、これら3つの県に住んで、東京の職場に出勤するという人も少なくはないだろう。

suumoの物件分析ではこらら3つの県に注目して、分析をしたいと思う。

今回は神奈川県。

物件調査の一助となれば幸いだ。

この記事で分かること

✅神奈川県の家賃可視化グラフ

  • 市ごと
  • 郡ごと
  • 向き
  • ユニットバスの有無
  • 洗濯機置場の有無

✅ランダムフォレストの結果と重要度

✅ランダムフォレスト結果の分析

今回使用するデータについて

今回使用するデータはsuumoから収集した神奈川県のデータ16,413件

収集は2023年8月上旬に実施したもの

pythonを使用して分析を実施したが、過去に東京の物件で同様の分析を実施したためコードについてはそちらを参考にしてもらいたい。

(「東京の家賃データ可視化する回」、「東京の家賃データランダムフォレストする回」、「東京の家賃データランダムフォレスト結果を分析する回」)

可視化

まずは可視化をしてみる。

今回可視化したのは以下の4つの内容。

  • 市ごとでの家賃
  • 郡ごとでの家賃
  • ユニットバスの有無と家賃との関係
  • 洗濯機置場の有無と家賃との関係

市ごとでの家賃結果はこちら。(クリックでズームできます)

鎌倉市と逗子市が高め。

秦野市が安め。

横浜市と川崎市は外れ値が大きいが、中央値は少し高め程度。


郡ごとでの家賃結果はこちら。(クリックでズームできます)


次は部屋の向きについて。(クリックでズームできます)

北西が高めだけど、あんまり全体として変わらないなー


あとはおまけに近いけど、

ユニットバスの有無と家賃の関係

室内洗濯機置き場の有無と家賃の関係

バストイレ別の表記が無いものは全てユニットバスにしているので、表記の記入漏れがあれば、ユニットバスの物件の中にもバストイレ別の物件があるかもしれない。(ユニットバスで20万家超えはあまり考えずらいので)

室内洗濯機置場に関しても同様。

ただどちらも、想定通りの結果になった。

ランダムフォレスト

ランダムフォレストを実施し回帰を行った結果を示す。

学習データのMAE:0.21580656440792015
学習データの決定係数:0.9319559728218217
テストデータのMAE:0.46468595590790235
テストデータの決定係数:0.9330256949536293

学習データのMAEとテストデータのMAEで少し過学習してそうに見えるけど、決定係数は学習データ、テストデータ共にとても高い値を示している。

実際のテストデータとランダムフォレストを用いてテストデータを予測したデータのプロットは以下のようになる。

続いて重要度。

重要度の中でも影響度の高い上位10位までを載せる。

部屋の広さ :  0.44092497426585364
築年数 :  0.188694839781623
階数 :  0.06455847387205856
駅からの近さ :  0.05559079840867348
kanagawa_area_神奈川県横浜市 :  0.05085291016996041
kanagawa_area_神奈川県川崎市 :  0.04737490775891144
nearest_station_武蔵新城駅 :  0.02538304645077057
nearest_station_みなとみらい駅 :  0.024598894000317496
kanagawa_area_神奈川県秦野市 :  0.018330994826420775
kanagawa_area_神奈川県伊勢原市 :  0.005991336352018555

参考のために東京の時の重要度も載せてみる。

部屋の広さ :  0.45490651521011893
tokyo_area_港区 :  0.13339525510693057
築年数 :  0.12525839402567415
tokyo_area_中央区 :  0.1110001610104453
tokyo_area_渋谷区 :  0.026485705125961326
階数 :  0.02467285817433082
駅からの近さ :  0.023639145789486175
tokyo_area_練馬区 :  0.010385812595103436
tokyo_area_武蔵野市 :  0.0060718737228410875
tokyo_area_世田谷区 :  0.005986764696788487

東京都違って神奈川は部屋の広さ、築年数、階数、駅からの近さが上位4つを占める。

しかし、駅からの近さと横浜市に住むことは同じくらい家賃に影響している。

東京都同じなのは部屋の広さと築年数で半分以上の影響力を持つことだ。

つまり、部屋の広さをとる代わり築年数を犠牲にすることで家賃を和らげられる可能性がある。

その逆も然り。

ランダムフォレストの結果の分析

最後に、ランダムフォレストの結果を分析していく。

具体的には残差分析を実施していく。

残差が大きいもの上位10個。

 total_yachin    predict  residual_error
        11.40  68.573000       57.173000
         8.00  29.829500       21.829500
         8.00  29.829500       21.829500
        10.20  19.860000        9.660000
         6.15  10.903000        4.753000
         8.40  13.001750        4.601750
         6.15  10.745000        4.595000
         5.63   9.926000        4.296000
         6.90  11.145000        4.245000
        10.20  14.177500        3.977500

本当の家賃(管理費・共益費込み)がtotal_yachin、予測値がpredict、その差がresidual_error

1位は実際の家賃に対して予測値が57万も高いというとんでも物件があった。

家賃の潜在性は68万にも関わらずだ。訳あり物件??

…ということで、残差分析をしていこう。

分析の仕方

「予測値 – 実際の値」が高い値ベスト100を求める。(上記ではベスト30を求めたが)

上位100に含まれている数が全体の割合の何パーセント含まれているかを求める。

これはコスパの高いベスト100に含まれている物件が全体に占める割合を計算することで、多い要素が結果的に順位の上位に来ることを避けるためにする。

例えば、ベスト100に含まれる物件の最寄り駅が駅Aが多いという結果が出たとする。

それだけだとそもそも駅Aの数が多いからベスト100に含まれてしまっている可能性もある。

この可能性を除くために割合で計算するということとする。

ちなみにこの割合を求めるpythonコードは以下のようになっている。

import pandas as pd

# それぞれのDataFrame内の値の出現回数をカウント
# xxxxxは求める対象となるカラム名
# yasume_best_100はコスパの高い物件が100件入ったdataframe
# room_shape_date_resはもとの物件のデータ
count_a = yasume_best_100['xxxxx'].value_counts()
count_b = room_shape_date_res['xxxxx'].value_counts()

# 値ごとの比率を計算してDataFrameに格納
ratios = count_a / count_b
ratios_df = pd.DataFrame({'Value': ratios.index, 'Ratio': ratios.values})

# 比率でランキングを計算して表示
ranked_ratios = ratios_df.sort_values(by='Ratio', ascending=False)
print(ranked_ratios[['Value', 'Ratio']].head(10).to_string(index=False))

ではそれぞれの結果を見ていく。

それぞれのベスト10を載せていく。


まず、について。

    新横浜駅  0.333333
    洋光台駅  0.200000
    新杉田駅  0.200000
    港南台駅  0.181818
    弥生台駅  0.150000
   いずみ野駅  0.142857
 みなとみらい駅  0.102564
 元町・中華街駅  0.100000
     根岸駅  0.100000
     香川駅  0.090909

新横浜駅の物件の3つに1つはコスパの高い物件ベスト100に入ることになる。

これは結構なお得情報だと思う。


エリア。

 神奈川県茅ヶ崎市  0.043478
 神奈川県南足柄市  0.025210
  神奈川県高座郡  0.019048
 神奈川県相模原市  0.014815
  神奈川県横浜市  0.009852
   神奈川県中郡  0.008130
  神奈川県逗子市  0.007092
 神奈川県足柄上郡  0.006270
  神奈川県川崎市  0.005822
  神奈川県厚木市  0.004992

割合が低い。

そもそも母体数が大きいからなのかも。


向き。

Value     Ratio
    北  0.012500
    東  0.009970
   南西  0.007922
    西  0.006378
   南東  0.005123
    南  0.004583
   北東  0.003241
   北西  0.002160

これも割合が低い。


階数。

 Value     Ratio
   6.0  0.030899
   0.0  0.018182
   5.0  0.013582
   7.0  0.012876
   8.0  0.011429
   4.0  0.009443
   3.0  0.007742
   9.0  0.005952
   2.0  0.004394
   1.0  0.003363

まとめ

今回は神奈川の物件の可視化からランダムフォレストそして結果の分析をした。

ランダムフォレストの回帰は東京と同様に精度が高い結果となった。

また、神奈川でも部屋の広さと築年数は家賃に大きく影響するらしい。

横浜市や川崎市は高い家賃の物件がずば抜けて高いが、中央値はそこまで高くないので、コスパが高い物件がある匂いがする。

ちなみに、上記で出てきた予測値と比較して57万円お得な物件は川崎市。

なので、無理に東京に住むよりも神奈川に寄るのも一つの手だと思う。

治安とかもちゃんと調べる必要があるけども。

今回はここまで。ではまた👋👋👋


タイトルとURLをコピーしました