Omvandla värden till sannolikheter
I den här övningen tillämpar vi en sannolikhetsfördelningsfunktion på en pandas DataFrame med gruppspecifika parametrar, genom att omvandla variabeln tip till sannolikheter.
Omvandlingen är en exponentiell transformation. Exponentialfördelningen definieras som
$$ e^{-\lambda * x} * \lambda $$
där λ (lambda) är medelvärdet för den grupp som observationen x tillhör.
Du ska tillämpa den exponentiella transformationen på storleken på varje bord i datamängden, efter att ha grupperat data enligt tidpunkten på dagen då måltiden ägde rum. Kom ihåg att använda varje grupps medelvärde för λ.
I Python kan du använda exponentialfunktionen som np.exp() från NumPy-biblioteket och medelvärdet som .mean().
Den här övningen är en del av kursen
Effektiv kodning med pandas
Övningsinstruktioner
- Definiera den exponentiella transformationen
exp_tr. - Gruppera data efter tidpunkten då måltiden ägde rum.
- Tillämpa transformationen på den grupperade datan.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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())