ラベルエンコーディング
カテゴリ変数のエンコーディングに取り組みましょう。今回も House Prices Kaggle コンペティションのサブサンプルを使います。
目的は、カテゴリ特徴量の "RoofStyle" と "CentralAir" をラベルエンコーディングで数値化することです。train と test の各 DataFrame はワークスペースにすでに用意されています。
この演習はコースの一部です
Pythonで挑むKaggleコンペティション
演習の手順
trainとtestの各 DataFrame を連結し、単一の DataFramehousesを作成します。- 引数なしで
LabelEncoderオブジェクトを作成し、leに代入します。 - 同じ
leオブジェクトを使って、"RoofStyle" と "CentralAir" のラベルエンコード済みの新しい特徴量を作成します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Concatenate train and test together
houses = ____.____([train, test])
# Label encoder
from sklearn.preprocessing import LabelEncoder
le = ____()
# Create new features
houses['RoofStyle_enc'] = le.fit_transform(houses[____])
houses['CentralAir_enc'] = ____.____(____[____])
# Look at new features
print(houses[['RoofStyle', 'RoofStyle_enc', 'CentralAir', 'CentralAir_enc']].head())