中国空气质量指数(AQI)及其计算方式
可以通过查看空气质量指数(AQI)了解空气质量。 #生活常识# #天气预报查询#
1、简介
环境空气质量标准的建立,可以为环境空气质量管理、保护人体健康、维护生态环境安全,促进人与社会、自然和谐可持续发展发挥积极作用。20世纪70年代,美国最先构建环境空气指数标准,随后,世界各国也基于各自的空气质量状况建立了适合本国的空气质量指数发布系统,如中国的API(air pollution index)和AQI(air quality index)。可见,空气质量指数标准的建立时间也不是很久远。
目前,中国空气质量标准来自国家环境保护部发布的《环境空气质量标准》(GB3095-2012)、《环境空气质量指数(AQI)技术规定(试行)》(HJ 633-2012)。从之前的3种、5种污染物到现在的6种污染物标准,分别为:SO2,NO2,O3,PM2.5,PM10,CO" role="presentation">SO2,NO2,O3,PM2.5,PM10,CO,具体如下:
表1 中国空气质量指数发展历程
2、AQI计算方法
如表1 所示,空气质量指数分为24h平均的指数、1h平均的指数以及8h平均,所以不同类型的指数计算方法也各不相同。而现实中我们常用的指数为24小时的以及1h的,气象平台平时用来发布的实时AQI数据是根据1hAQI标准计算出来的。24小时的AQI则更能体现当天的整体空气质量情况如何。
我们先来介绍AQI计算方式的,然后后面我们会介绍具体的1hAQI计算方式以及24hAQI具体计算方式。
图1 AQI计算方式以及示例
然而,通过观察表1 我们可以发现,1hAQI中的污染物只有4种,缺少PM2.5,PM10" role="presentation">PM2.5,PM10。而实际却是1h AQI中PM2.5,PM10" role="presentation">PM2.5,PM10的计算标准是依据24h的来的,也就是直接用24h中PM2.5,PM10" role="presentation">PM2.5,PM10的IAQI计算标准来计算1h中这两项污染物的IAQI。
3、AQI计算代码(Python)
我们先来展示1h的AQI计算代码,24h的代码其实和1h差不多,仅需要跟换Idata即可。
import pandas as pd
import numpy as np
import json
import copy
if __name__ == '__main__':
"""此为1h的AQI计算代码,24h的只需要更换Idata即可"""
qua = [0, 50, 100, 150, 200, 300, 400, 500]
data = pd.read_json("D:\py\比赛数据处理\数据\data4.json")
print(round(2.50))
print(type(data))
data1 = data.values
print(type(data1))
IAQI =list(np.zeros(len(data1[0][0]["PM2.5"])))
print((data1[0][0]).keys())
Data=np.array([data1[0][0]["PM2.5"],data1[0][0]["PM10"],data1[0][0]["SO2"],data1[0][0]["NO2"],data1[0][0]["CO"],data1[0][0]["O3"]]).reshape(len(data1[0][0]["PM2.5"]),6)
Idata = [
[0, 35, 75, 115, 150, 250, 350, 500],
[0, 50, 150, 250, 350, 420, 500, 600],
[0,150,500,650,800],
[0,100,200,700,1200,2340,3090,3840],
[0,5,10,35,60,90,120,150],
[0,160,200,300,400,800,1000,1200]
]
T_IA=0
i=j=k=0
print(len(Idata))
for i in range(len(Idata)):
T_data=Data[:,i]
T_Idata=Idata[i]
for j in range(len(T_data)):
for k in range(1,len(T_Idata)):
if T_Idata[k]>T_data[j]:
break
if k==(len(T_Idata)-1) and T_Idata[k]<T_data[j]:
T_IA=T_Idata[k]
else:
T_IA=int(round((((qua[k]-qua[k-1])/(T_Idata[k]-T_Idata[k-1]))*(T_data[j]-T_Idata[k-1])+qua[k-1])+0.5))
if T_IA>IAQI[j]:
IAQI[j]=T_IA
data1[0][0]["AQI"]=(IAQI)
data2=copy.deepcopy(data1[0][0]['date'])
data1[0][0].pop("date")
data1[0][0]["date"]=data2
filename="D:\py\比赛数据处理\数据\IAdata4.json"
Dic={}
Dic["air_data"]=data1[0].tolist()
with open(filename, 'w') as file_obj:
json.dump(Dic,file_obj)
4、后续
AQI计算出来了,为了更能直观的反应空气质量如何,我们可以将其转换成对应的空气质量等级,如下:
链接:https://pan.baidu.com/s/1CzpSKXKDkdu0lrcdiUAiRA
提取码:g757
--来自百度网盘超级会员V4的分享
这是对应的python代码和文件。
上边是要处理的文件格式(已更新)
还有什么问题可以直接评论或私聊,应该是最近数模比赛了吧。
网址:中国空气质量指数(AQI)及其计算方式 https://www.yuejiaxmz.com/news/view/277644
相关内容
室内外空气质量监测室内空气指数多少正常
空气质量检测内容
了解体重质量指标BMI的计算方法(计算体重质量指标公式)
如何检测室内空气质量
空气质量检测仪——家用空气检测
室内空气质量及其改善
户外空气质量差时能不能运动?如何科学防护?这份手册请收藏
今年前5个月,东莞空气质量重大改善,优良天数占比92.1%
国家室内空气质量检测