Exponentieel voortschrijdend gemiddelde & over/onder-smoothing
In de vorige oefening zagen we dat onze omzet over tijd vrij vlak is. In deze oefening duiken we dieper in de data om te ontdekken waarom dat zo kan zijn. We bekijken de omzet van één in-app-aankoopproduct dat we verkopen om te zien of dit eventuele trends blootlegt. Omdat dit minder data is dan onze totale omzet, zal het veel rumoeriger zijn. Om daarvoor te corrigeren, maken we de data glad met een exponentieel voortschrijdend gemiddelde.
Er is een nieuwe daily_revenue-gegevensset beschikbaar met de omzet voor dit product.
Deze oefening maakt deel uit van de cursus
Customer Analytics and A/B Testing in Python
Oefeninstructies
- Gebruik de methode
.ewm()om het exponentieel voortschrijdend gemiddelde met eenspanvan 10 te berekenen en sla dit op in de kolomsmall_scale. - Herhaal de vorige stap met een span van 100 en sla dit op in de kolom
medium_scale. - Bereken tot slot het exponentieel voortschrijdend gemiddelde met een span van 500 en sla dit op in de kolom
large_scale. - Plot de drie gemiddelden, samen met de ruwe data. Bekijk hoe duidelijk de trend in de data wordt.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Calculate 'small_scale'
daily_revenue['small_scale'] = daily_revenue.revenue.____(span=____).mean()
# Calculate 'medium_scale'
daily_revenue['___'] = daily_revenue.revenue.____(____=____).____
# Calculate 'large_scale'
daily_revenue[____] = daily_revenue.revenue.____(____=____).____
# Plot 'date' on the x-axis and, our three averages and 'revenue'
# on the y-axis
daily_revenue.plot(x = ____, y =['revenue', 'small_scale', ____, ____])
plt.____