Вычисления на основе сводной таблицы
Сводные таблицы уже содержат описательные статистики, однако это лишь отправная точка для поиска полезных закономерностей. Нередко требуется выполнить дополнительные вычисления. Одна из распространённых задач — найти строки или столбцы с наибольшим или наименьшим значением.
Вспомните из главы 1: вы можете легко отфильтровать Series или DataFrame, чтобы выбрать нужные строки с помощью логического условия в квадратных скобках. Например: series[series > value].
pandas загружен как pd, DataFrame temp_by_country_city_vs_year доступен.
Метод .head() для этого DataFrame показан ниже; для наглядности отображены лишь несколько столбцов с годами:
| country | city | 2000 | 2001 | 2002 | … | 2013 |
|---|---|---|---|---|---|---|
| Afghanistan | Kabul | 15.823 | 15.848 | 15.715 | … | 16.206 |
| Angola | Luanda | 24.410 | 24.427 | 24.791 | … | 24.554 |
| Australia | Melbourne | 14.320 | 14.180 | 14.076 | … | 14.742 |
| Sydney | 17.567 | 17.854 | 17.734 | … | 18.090 | |
| Bangladesh | span translate="no">Dhaka | 25.905 | 25.931 | 26.095 | … | 26.587 |
Это упражнение является частью курса
Работа с данными в pandas
Инструкции к упражнению
- Вычислите среднюю температуру для каждого года и сохраните результат в
mean_temp_by_year. - Отфильтруйте
mean_temp_by_year, чтобы найти год с наибольшей средней температурой. - Вычислите среднюю температуру для каждого города (по столбцам) и сохраните результат в
mean_temp_by_city. - Отфильтруйте
mean_temp_by_city, чтобы найти город с наименьшей средней температурой.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Get the worldwide mean temp by year
mean_temp_by_year = temp_by_country_city_vs_year.____
# Filter for the year that had the highest mean temp
print(mean_temp_by_year[____])
# Get the mean temp by city
mean_temp_by_city = temp_by_country_city_vs_year.____
# Filter for the city that had the lowest mean temp
print(mean_temp_by_city[____])