
Probleemstelling
Laten we aannemen dat we een tijdreeksgegevensset hebben die de dagelijkse verkoopcijfers van een winkel voor een jaar bevat. Het is onze taak om deze dataset te analyseren en het 7-daagse voortschrijdend gemiddelde van verkopen te berekenen om mogelijke afwijkingen glad te strijken, trends te identificeren en zakelijke beslissingen te sturen. We gaan Python gebruiken, een bekende en veelgebruikte programmeertaal voor data-analyse.
Oplossingsaanpak:
Om het probleem met het rollende venster op te lossen, volgen we deze stappen:
- Importeer de benodigde bibliotheken
- Laad de dataset
- Maak het rollende venster
- Bereken het 7-daags voortschrijdend gemiddelde
- Visualiseer de resultaten
Laten we beginnen met het importeren van de benodigde bibliotheken en het laden van de dataset.
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
# Load dataset (Assuming the dataset is a CSV file)
data = pd.read_csv('sales_data.csv')
# Preview the dataset
print(data.head())
Nadat we de dataset hebben geladen, gaan we nu verder met het maken van het rollende venster.
Het rollende venster maken
We wenden ons tot de machtigen Pandas bibliotheek om een rollend venster te maken met behulp van de rolling() functie. Het voortschrijdende venster heeft een grootte van 7 dagen, omdat we het voortschrijdend gemiddelde over 7 dagen willen berekenen.
# Create a rolling window of 7 days rolling_window = data['sales'].rolling(window=7)
Nu we het voortschrijdende venster hebben, kunnen we het 7-daags voortschrijdend gemiddelde berekenen.
Berekening van het voortschrijdend gemiddelde over 7 dagen
Om het 7-daags voortschrijdend gemiddelde van verkopen te vinden, noemen we eenvoudigweg de mean() functie op ons rollende raamobject. Vervolgens voegen we dit nieuwe voortschrijdend gemiddelde toe als een nieuwe kolom in onze dataset.
# Calculate the moving average data['7_day_avg'] = rolling_window.mean() # Preview the updated dataset print(data.head(10))
Laten we ten slotte onze resultaten visualiseren om de trends in onze gegevens beter te begrijpen.
Resultaten visualiseren
We gebruiken de populaire matplotlib bibliotheek om een eenvoudig lijndiagram te maken met zowel de dagelijkse verkoopgegevens als ons berekende 7-daags voortschrijdend gemiddelde.
# Plot the daily sales data
plt.plot(data['sales'], label='Daily Sales')
# Plot the 7-day moving average
plt.plot(data['7_day_avg'], label='7-Day Moving Average', color='red')
# Add labels and legend
plt.xlabel('Days')
plt.ylabel('Sales')
plt.title('Daily Sales and 7-Day Moving Average')
plt.legend()
# Display the plot
plt.show()
De gegenereerde grafiek toont de dagelijkse verkoopgegevens samen met het 7-daags voortschrijdend gemiddelde, waardoor het voor ons gemakkelijker wordt om trends en afwijkingen te identificeren.
Concluderend wordt het rollende venster veel gebruikt in data-analyse, met name tijdreeksen, vanwege het vermogen om verborgen patronen en trends binnen grote datasets te onthullen. De combinatie van Python, Panda's en Matplotlib vereenvoudigt het proces van het berekenen van het voortschrijdend gemiddelde en het visualiseren van resultaten, waardoor het een laagdrempelig onderwerp wordt voor zowel beginners als experts in het veld.