关于某城市一年污染物对AQI的贡献量分析
2021-03-24梁俊兰
摘 要:应用数据分析工具pandas对某城市一年空气质量的数据进行分析,利用可视化工具matplotlib展示数据分析的结果;数据是无情的也是最有说服力的,用污染物对AQI贡献量,让人们更加了解空气质量中最重要的污染物,并在改善环境中以及日常生活中应该怎么做。
关键词:AQI ;污染物 ;PM10
每时每刻在智能终端上面通过“天气”可以看到某个城市的AQ I以及各种污染物的值,这些值代表的意义可以通过国家环境保护部2012年的第8号文件的相关规定查到;国家空气质量检测系统检测的目的不止是了让民众知道这些数据,还应该有一个目的就是为了让我们生活的环境变得更健康,改善我们的生活环境的质量。
通过国家环境保护部2012年的第8号文件的表二可以得知,AQI的值越小,空气质量越好,AQ I的值是这样得到,将国家空气质量检测系统观察的值代入的公式(1)可以直接计算出每时的不同污染物对应的IAQI 的值,选取最大的IAQI的值就是每时的AQI的值,通过把一天24小时的污染物的值取平均后,再利用每时的计算方法即可得到每日的AQI值。
通过降低污染物的观测值,方可降低AQI的值,提升空气质量的等级;污染物有:PM2.5、PM10、O3、SO2、NO2以及CO,这些污染物对应的值都要降低吗?还是降低某一个或某几个?我认为这应该取决于污染物对AQI值的贡献量,因为规定中已经说明时取各个污染物通过公式计算得到的最大者。
该论文的主要内容包含下面几个部分:
一、主要思路
通过计算污染物对AQI的贡献量,确定出哪个或哪些污染物的值应该降低的。
二、使用的工具
在虚拟环境Anaconda中,使用Python3的数据分析工具pandas以及可视化工具matplotlib。
三、具体的实现步骤
首先,明确目的:得到某一年中污染物对AQI的贡献量;
其次,获取这一年的数据,熟悉数据的格式;
第三,预处理数据,将数据中的缺失值、重复值以及异常值处理,在处理的过程中,发现有缺失值(不多),由于公式中要求是选取最大的IAQI的值作为AQI的值,于是采取的措施是将缺失值填充为0。
第四,数据分析,通过每小时的污染物的贡献量,计算出一天的污染物的贡献量,然后将数据归一化处理,然后计算出一年的污染物的贡献量,部分程序以及结果截图如下:
第五,数据可视化,将一年的数据汇总后,通过柱状图(图四)显示各污染物数据的分布情况。这时部分源码:
df3=df1[df1['指标']=='PM2.5']
cut=[0,50,100,200,300,400,500]
df3['categroies']=pd.cut(df3['数值'],bins=cut,labels=[u'优',u'良',u'轻度污染',u'中度污染',u'重度污染',u'严重污染'])
print(df3)
groupby=df3.groupby(df3['categroies'])['categroies'].count()
print(groupby)
list_max=[]
#取出每一个分类的最大值
for i in labels:
list_max.append((df3[df3['categroies']==i].max()['数值']))
print(list_max)
columns=['labels','max']
dict1={}
print(labels,groupby.values,list_max,)
df4=pd.DataFrame()
df4['labels']=labels
df4['max']=list_max
df4['groupby']=groupby.values
df5=df4.fillna(0)
print(df5)
print(df5.iloc[:,1])
print(sum(df5.iloc[:,1]*df5.iloc[:,2])/24)
jamean=sum(df5.iloc[:,1]*df5.iloc[:,2])/24
print(jamean)
mid=math.sqrt(sum([(i-126)**2 for i in df2['数值']])/23)
#jun=math.sqrt(mid)
print(mid)
print(jamean)
第六,结论,从一年的污染物的贡献统计数据可以得出这样的结论,PM10是居于首位,其次是PM2.5。如果能减少这两种污染物的排污,空气质量就会提高。
PM10来自污染源的直接排放,比如烟囱与车辆。另一些则是由环境空气中硫的氧化物、氮氧化物、挥发性有机化合物及其它化合物互相作用形成的細小颗粒物。此外,在未铺沥青、水泥的路面上行使的机动车、材料的破碎碾磨处理过程以及被风扬起的尘土也能增加PM10 的浓度。
PM2.5的主要来源是日常发电、工业生产、汽车尾气排放等过程中经过燃烧而排放的残留物,大多含有重金属等有毒物质。一般而言,PM2.5主要来自化石燃料的燃烧,如机动车尾气、燃煤等,除此之外还有一些挥发性有机物。
了解到AQI的值主要是由PM10决定的,这个城市的每个人都应该行动起来,减少自己的PM10的排放,采用无烟煤取暖(政府应该采取一些惠民措施,逼近这个要比普通煤贵一些)、绿色出行、减少工业污染排放、尽量减少在多风的季节修路。
四、存在的不足以及后续的研究内容
一年的污染物的贡献量的总数应该是366(统计的这一年是闰年),可是文章的数据小于366;在污染物的贡献量的统计中,发现有一些特殊的值,比如那些一天的污染物贡献量比较小和比较大的(一天污染物贡献量应该是等于1),需要仔细地查看源数据,找出原因;
参考文献
[1]向春枝. Python程序设计项目化教学[M].北京:中国铁道出版社 [2020-07].
[2] 张俊红.对比Excel,轻松学习Python数据分析[M].北京:电子工业出版社[2019.2]
作者简介:
梁俊兰(1978—),女,内蒙古呼和浩特市土左旗,呼和浩特职业学院计算机信息学院,硕士,研究方向:组合数学与图论