終了済み: 不動産取引価格予測

不動産価格はいくらになる?

賞金: 100,000 参加チーム数: 349 30日前に終了

LightGBMによるBase line

参考資料

[動作環境] Google colaboratory

from google.colab import drive
drive.mount('/content/drive/')
Drive already mounted at /content/drive/; to attempt to forcibly remount, call drive.mount("/content/drive/", force_remount=True).
# ご自身の環境に合わせてください
%cd /content/drive/My\ Drive/予測コンペ/ProbSpace/不動産取引価格予測
!ls
/content/drive/My Drive/予測コンペ/ProbSpace/不動産取引価格予測
estate_estimation_prediction.ipynb  test_data.csv
published_land_price.csv	    train_data.csv
import featuretools as ft
import lightgbm as lgb
#import optuna
import numpy as np
import sklearn.datasets
import sklearn.metrics
import pandas as pd
import matplotlib.pyplot as plt
import tensorflow as tf
import xgboost as xgb
import seaborn as sns
from tensorflow import keras
import keras.layers as L
from keras.models import Model
from sklearn.decomposition import PCA
from keras import losses
from sklearn import preprocessing
from sklearn.metrics import log_loss
from sklearn.metrics import mean_squared_error
from sklearn.model_selection import KFold
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
!pip install japanize-matplotlib
import japanize_matplotlib
!pip install jeraconv
from jeraconv import jeraconv
Requirement already satisfied: japanize-matplotlib in /usr/local/lib/python3.6/dist-packages (1.0.5)
Collecting jeraconv
  Downloading https://files.pythonhosted.org/packages/b6/b0/c4471ecae4fa8ba6143cd828bcc739d1ae442cc668d86eed4ac26a91d1a9/jeraconv-0.2.1-py3-none-any.whl
Installing collected packages: jeraconv
Successfully installed jeraconv-0.2.1

データの読み込み

train = pd.read_csv("train_data.csv")
print("train shape is " + str(train.shape))
train.head()
train shape is (356344, 28)
id 種類 地域 市区町村コード 都道府県名 市区町村名 地区名 最寄駅:名称 最寄駅:距離(分) 間取り 面積(㎡) 土地の形状 間口 延床面積(㎡) 建築年 建物の構造 用途 今後の利用目的 前面道路:方位 前面道路:種類 前面道路:幅員(m) 都市計画 建ぺい率(%) 容積率(%) 取引時点 改装 取引の事情等 y
0 1 中古マンション等 NaN 13101 東京都 千代田区 飯田橋 飯田橋 1 2LDK 55 NaN NaN NaN 昭和59年 SRC NaN 住宅 NaN NaN NaN 商業地域 80.0 600.0 2017年第4四半期 改装済 NaN 66.0
1 2 中古マンション等 NaN 13101 東京都 千代田区 飯田橋 飯田橋 5 1K 20 NaN NaN NaN 平成15年 RC NaN 住宅 NaN NaN NaN 商業地域 80.0 500.0 2017年第4四半期 未改装 NaN 19.0
2 3 中古マンション等 NaN 13101 東京都 千代田区 飯田橋 飯田橋 3 1LDK 45 NaN NaN NaN 平成24年 RC 住宅 その他 NaN NaN NaN 商業地域 80.0 500.0 2017年第3四半期 未改装 NaN 37.0
3 4 中古マンション等 NaN 13101 東京都 千代田区 飯田橋 飯田橋 5 1R 20 NaN NaN NaN 平成15年 RC 住宅 住宅 NaN NaN NaN 商業地域 80.0 500.0 2017年第3四半期 未改装 NaN 18.0
4 5 宅地(土地と建物) 商業地 13101 東京都 千代田区 飯田橋 飯田橋 3 NaN 80 ほぼ台形 6.8 330 昭和61年 RC 住宅、事務所、店舗 事務所 南西 区道 8.0 商業地域 80.0 500.0 2017年第2四半期 NaN NaN 240.0
test = pd.read_csv("test_data.csv")
iddf = test[["id"]]
print("test shape is " + str(test.shape))
test.head()
test shape is (34844, 27)
id 種類 地域 市区町村コード 都道府県名 市区町村名 地区名 最寄駅:名称 最寄駅:距離(分) 間取り 面積(㎡) 土地の形状 間口 延床面積(㎡) 建築年 建物の構造 用途 今後の利用目的 前面道路:方位 前面道路:種類 前面道路:幅員(m) 都市計画 建ぺい率(%) 容積率(%) 取引時点 改装 取引の事情等
0 1 中古マンション等 NaN 13101 東京都 千代田区 飯田橋 飯田橋 3 1LDK 35 NaN NaN NaN 昭和60年 SRC 住宅 住宅 NaN NaN NaN 商業地域 80.0 700.0 2018年第4四半期 未改装 NaN
1 2 中古マンション等 NaN 13101 東京都 千代田区 飯田橋 飯田橋 4 1K 20 NaN NaN NaN 昭和57年 SRC NaN 住宅 NaN NaN NaN 商業地域 80.0 700.0 2018年第3四半期 未改装 NaN
2 3 宅地(土地と建物) 商業地 13101 東京都 千代田区 飯田橋 飯田橋 3 NaN 80 ほぼ台形 6.8 330 昭和61年 RC 住宅、事務所、店舗 事務所 南西 区道 8.0 商業地域 80.0 500.0 2018年第2四半期 NaN NaN
3 4 中古マンション等 NaN 13101 東京都 千代田区 飯田橋 飯田橋 3 1K 30 NaN NaN NaN 昭和60年 SRC NaN 住宅 NaN NaN NaN 商業地域 80.0 700.0 2018年第2四半期 未改装 NaN
4 5 中古マンション等 NaN 13101 東京都 千代田区 飯田橋 飯田橋 1 2LDK 70 NaN NaN NaN 昭和59年 SRC NaN 住宅 NaN NaN NaN 商業地域 80.0 600.0 2018年第2四半期 未改装 NaN
for i, val in enumerate(train.columns):
  print("====================")
  print(i, val)
  if val == "id":
    continue
  train[val].value_counts(dropna=False).plot.bar(figsize=(19, 3), fontsize=18, title=val)
  plt.show()
====================
0 id
====================
1 種類
====================
2 地域
====================
3 市区町村コード
====================
4 都道府県名
====================
5 市区町村名
====================
6 地区名
====================
7 最寄駅:名称
====================
8 最寄駅:距離(分)
====================
9 間取り
====================
10 面積(㎡)
====================
11 土地の形状
====================
12 間口
====================
13 延床面積(㎡)
====================
14 建築年
====================
15 建物の構造
====================
16 用途