値を確率に変換する
この演習では、pandas の DataFrame に対して確率分布関数を適用し、チップ額の変数を確率に変換します。
ここでは指数変換を行います。指数分布は次のように定義されます。
$$ e^{-\lambda * x} * \lambda $$
ここで λ(ラムダ)は、観測値 x が属するグループの平均です。
食事が行われた時間帯でデータをグループ化したうえで、各テーブルの人数(size)に指数分布の変換を適用します。λ には各グループの平均を使うことを忘れないでください。
Python では、NumPy ライブラリの np.exp() で指数関数を、平均値は .mean() で計算できます。
この演習はコースの一部です
pandasで効率的にコードを書く
演習の手順
- 指数分布の変換
exp_trを定義します。 - 食事が行われた時間帯でデータをグループ化します。
- グループ化したデータに変換を適用します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Define the exponential transformation
exp_tr = lambda x: ____(____*____) * x.mean()
# Group the data according to the time
restaurant_grouped = restaurant_data.____(____)
# Apply the transformation
restaurant_exp_group = restaurant_grouped['tip'].____(____)
print(restaurant_exp_group.head())