Показати агреговані значення
Інколи потрібно показати дані в більш агрегованому вигляді. Наприклад, дані co2_levels містять щотижневі спостереження, але може знадобитися показати значення, агреговані за місяцями року. У таких наборах даних, як датафрейм co2_levels, де індекс має тип datetime, ви можете отримати рік для кожної дати в індексі:
# extract of the year in each dates of the df DataFrame
index_year = df.index.year
Щоб отримати місяць або день дат в індексі датафрейму df, використайте відповідно df.index.month і df.index.day.
Далі можна використати отриманий рік кожного елемента індексу у датафреймі co2_levels та функцію groupby, щоб обчислити середні значення рівня CO2 за роками:
df_by_year = df.groupby(index_year).mean()
Ця вправа є частиною курсу
Візуалізація часових рядів у Python
Інструкції до вправи
- Витягніть місяць для кожної дати в індексі датафрейму
co2_levelsі збережіть значення у зміннійindex_month. - Використовуючи функції
groupbyтаmeanз бібліотекиpandas, обчисліть помісячні середні значення рівня CO2 у датафрейміco2_levelsі збережіть їх у новому датафрейміmean_co2_levels_by_month. - Побудуйте графік значень датафрейму
mean_co2_levels_by_month, використавши розмір шрифту 6 для поділок на осях.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# 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()