AQI 分析
1、背景信息
- 哪些城市的空气质量较好/较差?
- 空气质量在地理位置分布上,是否具有一定的规律性?
- 城市的空气质量与是否临海是否有关?
- 空气质量主要受哪些因素影响?
- 全国城市空气质量普遍处于何种水平?
- 分析报告预览.GIF
现在获取了2015年空气质量指数集。该数据集包含全国主要城市的相关数据以及空气质量指数。
2、数据分析流程
在进行数据分析之前,我们需要清楚数据分析的基本流程。
3、读取数据
导入需要的库并初始化一些设置。
1 import numpy as np
2 import pandas as pd
3 import matplotlib.pyplot as plt
4 import seaborn as sns
5 import warnings
6 sns.set(style="darkgrid") 7 plt.rcParams["font.family"]="simHei" #用于解决中文显示不了的问题
8 plt.rcParams["axes.unicode_minus"]=False
9 warnings.filterwarnings("ignore")
加载数据集
4、数据清洗
4.1 缺失值
- 删除缺失值
- 仅适用于缺失数量很少的情况
- 填充缺失值
- 数值变量
- 均值填充
- 中值填充
- 类别变量
- 众数填充
- 单独作为一个类别
- 其他
- 数值变量
- 删除缺失值
可以看出,我们的原始数据有点右偏,因为缺失值只有4个,缺失数量很少,可以直接删除,,但我们这次用了中位数来填充。
4.2 异常值
- describe()
- 箱线图
- 3σ方式
- 其他相关异常检测算法
describe():
3σ
箱线图
- 删除异常值(不常用)
- 视为缺失值处理
- 对数转换(适用于右偏,建模)
- 临界值替换
- 分箱法离散化处理(分成不同区间映射成离散值)
以对数转换为例。
4.3 重复值
清洗完的数据可以直接导出。
5 数据分析
5.1 空气质量最好&最坏的几个城市
空气最好的5个城市
先按AQI排序,默认升序,取前5条记录;x轴上的城市名称需要旋转45°,这样便于查看。
空气最差的5个城市
5.2 全国部分城市的空气质量
5.2.1 空气质量等级划分:
从图中可以看出,我国主要城市的空气质量主要以一级和二级为主,三级占一部分,其他占少数。
5.2.2 空气质量指数分布情况
5.3 城市的空气质量与是否临海是否有关?
先来看看此数据中临海与内陆城市的数量:
要用到groupby()分组函数
5.4 空气质量主要受哪些因素影响?
- 人口密度大是否对导致空气质量低呢?
- 绿化率高是否能提高空气质量呢?
先用pairplot()画一个散点图矩阵,取3列数据
DataFrame对象提供了计算相关系数的方法,直接data.corr()即可
再将数据可视化,更清晰的呈现数据:
结果统计
5.5全国城市空气质量普遍处于何种水平?
据说2015年全国所有城市的空气质量指数均值在71左右,真的假的?
为了验证这是否正确,我们先来看看均值:
这样我们就计算出2015年全国所有城市平均空气质量指数95%的可能在70.63~80.04之间。