LoginSignup
3
1

More than 3 years have passed since last update.

【初心者向けハンズオン】kaggleの「住宅価格を予測する」を1行ずつ読み解く(第7回:予測モデルの構築の準備)

Posted at

お題

 有名なお題であるkaggleの「House Price」問題にみんなでチャレンジしていくことになったハンズオンの内容をメモしていく企画の第7回。解説というよりはメモのまとめだったりもしますが、どこかの誰かのためになれば幸いです。前回で準備がおわり、いよいよ解析段階に。

本日の作業

予測モデルの構築

# マージデータを学習データとテストデータに分割
train_ = all_data[all_data['WhatIsData']=='Train'].drop(['WhatIsData','Id'], axis=1).reset_index(drop=True)
test_ = all_data[all_data['WhatIsData']=='Test'].drop(['WhatIsData','SalePrice'], axis=1).reset_index(drop=True)
# 学習データ内の分割
train_x = train_.drop('SalePrice',axis=1)
train_y = np.log(train_['SalePrice'])
# テストデータ内の分割
test_id = test_['Id']
test_data = test_.drop('Id',axis=1)

マージデータを学習データとテストデータに分割

trainの方で確認します。

all_data[all_data['WhatIsData']=='Train'].drop(['WhatIsData','Id'], axis=1).reset_index(drop=True)

まずはall_data[all_data['WhatIsData']=='Train']の中身を確認。all_data内のTrainだけをとってくるわけです。
スクリーンショット 2020-07-06 11.55.36.png

all_data[all_data['WhatIsData']=='Train'].drop(['WhatIsData','Id'], axis=1)の中身確認WhatIsData, Idを列から落とす。
スクリーンショット 2020-07-06 11.56.45.png

all_data[all_data['WhatIsData']=='Train'].drop(['WhatIsData','Id'], axis=1)の中身確認。indexをリセット(キャプチャ画像だと一切替わって見えねえ…)
スクリーンショット 2020-07-06 12.00.03.png

(ちなみに、trainもtestも、以前配列をわざわざ作ったような。。。そこらへんの全体像をもっかいおさらいする必要があるなと思いました)

学習データ内の分割

train_x = train_.drop('SalePrice',axis=1)
train_y = np.log(train_['SalePrice'])

train_x = train_.drop('SalePrice',axis=1)で、SalePrice以外のカラムを説明変数にするわけですね。

train_y = np.log(train_['SalePrice'])で、目的変数を用意。(前回の対数変換をお忘れなく)

テストデータ内の分割

test_id = test_['Id']
test_data = test_.drop('Id',axis=1)

もはや見たままか。。。流石にここはtest_id, test_dataそれぞれの確認は省略します。

予測モデルの構築

に、入ろうと思ったんですが、いかんせんわからないことがもりもりになってきたので、入らずに準備に徹します。主に単語調べ。

StandardScaler() #スケーリング

[0.001, 0.01, 0.1, 1.0, 10.0,100.0,1000.0] #パラメータグリッド

make_pipeline(scaler, ls) #パイプライン生成

おしまい。

この宿題をまずは全部読み込みをするところからか。
思ったこと言っていいですかね。「そろそろ終盤」とか思ってましたが、ここまでやってたこと全部前処理だったという。

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1