カテゴリ変数のエンコードと数値変数のスケーリング
この最終ステップでは、カテゴリ変数に対して one-hot エンコーディングを行い、その後に数値列をスケーリングします。pandas ライブラリは pd として、sklearn.preprocessing モジュールからは StandardScaler モジュールが読み込まれています。
生の通信業界のチャーンデータセット telco_raw は pandas の DataFrame として、さらに前の演習で作成した列名を含むリスト custid、target、categorical、numerical も読み込まれています。コンソールでデータセットを確認して、内容に慣れておきましょう。
この演習はコースの一部です
Pythonで学ぶマーケティングのための機械学習
演習の手順
- カテゴリ変数に one-hot エンコーディングを行ってください。
StandardScalerインスタンスを初期化してください。- 数値列に対して
scalerを fit して transform してください。 scaled_numericalから DataFrame を作成してください。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Perform one-hot encoding to categorical variables
telco_raw = pd.get_dummies(data = ___, columns = categorical, drop_first=True)
# Initialize StandardScaler instance
scaler = ___()
# Fit and transform the scaler on numerical columns
scaled_numerical = ___.fit_transform(telco_raw[___])
# Build a DataFrame from scaled_numerical
scaled_numerical = pd.DataFrame(___, columns=numerical)