Geaggregeerde waarden weergeven
Soms moet je je gegevens in een meer geaggregeerde vorm tonen. Zo bevat de data co2_levels wekelijkse waarden, maar je wilt die misschien per maand van het jaar aggregeren. In gegevenssets zoals de DataFrame co2_levels, waar de index van het type datetime is, kun je het jaar van elke datum in de index ophalen:
# extract of the year in each dates of the df DataFrame
index_year = df.index.year
Om de maand of dag van de datums in de index van de DataFrame df op te halen, gebruik je respectievelijk df.index.month en df.index.day.
Vervolgens kun je het jaar dat je uit de index van de DataFrame co2_levels hebt gehaald, samen met de functie groupby, gebruiken om de gemiddelde CO2-waarden per jaar te berekenen:
df_by_year = df.groupby(index_year).mean()
Deze oefening maakt deel uit van de cursus
Tijdreeksen visualiseren in Python
Oefeninstructies
- Haal de maand op voor elke datum in de index van de DataFrame
co2_levelsen sla de waarden op in een variabeleindex_month. - Gebruik de functies
groupbyenmeanuit de bibliotheekpandasom de maandgemiddelden van de CO2-waarden in de DataFrameco2_levelste berekenen en sla die op in een nieuwe DataFramemean_co2_levels_by_month. - Plot de waarden van de DataFrame
mean_co2_levels_by_monthmet een lettergrootte van 6 voor de asmarkeringen.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Get month for each dates in the index of co2_levels
index_month = ____.index.____
# Compute the mean CO2 levels for each month of the year
mean_co2_levels_by_month = co2_levels.____(____).____()
# Plot the mean CO2 levels for each month of the year
mean_co2_levels_by_month.____
# Specify the fontsize on the legend
plt.legend(fontsize=10)
# Show plot
plt.show()