.transform() を使った min-max 正規化
とてもよく使われる処理に、min-max 正規化があります。これは、関心のある値から最小値を引き、その結果を最大値と最小値の差で割ってスケーリングする方法です。たとえば、学生の体重データが160ポンドから200ポンドの範囲にある場合、各学生の体重から160を引き、結果を40(200 - 160)で割ります。
この演習では、レストランのデータに含まれる数値変数すべてに min-max 正規化を定義して適用します。まず食事の時間(Lunch か Dinner)でデータをグループ化し、その後に各グループごとに正規化を適用します。
IPython Shell でデータセットを確認し、どのように変化するかをいつでも探索できます。必要に応じて、スライドタブのスライドも参照してください。
この演習はコースの一部です
pandasで効率的にコードを書く
演習の手順
- lambda を使って min-max 正規化を定義します。
- 食事が行われた時間でデータをグループ化します。
- グループ化したデータに変換を適用します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Define the min-max transformation
min_max_tr = lambda x: (x - ____) / (____ - x.min())
# Group the data according to the time
restaurant_grouped = restaurant_data.____(____)
# Apply the transformation
restaurant_min_max_group = restaurant_grouped.____(____)
print(restaurant_min_max_group.head())