开始使用免费开始使用

在透视表上进行计算

透视表里本身就是汇总统计,但这只是迈向洞见的第一步。很多时候,您还需要在其基础上继续计算。一个常见做法是找出出现最高值或最低值的行或列。

回顾第 1 章,您可以在方括号内使用逻辑条件,轻松对子序列或 DataFrame 进行子集选择,找出感兴趣的行。例如:series[series > value]

pandas 已以 pd 导入,且 DataFrame temp_by_country_city_vs_year 可用。 该 DataFrame 的 .head() 如下所示,仅展示了部分年份列:

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[____])
编辑并运行代码