刷屏的北京霧霾,2018 年北上廣深空氣質量分析
閱讀文字大概需要 6 分鐘。
新建Python軟體開發測試技術交友群QQ:952490269(加群備註software)
先對2017年天津的空氣質量情況進行分析,然後再是北上廣深。
/ 01 / 網頁分析
網站沒有反爬,所以直接抓取資訊就好了。
這裡簡單給大家科普一下有關AQI,PM2.5的知識。
/ 02 / 資料獲取
獲取程式碼如下所示。
import time import requests from bs4 import BeautifulSoup headers = { 'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36' } for i in range(1, 13): time.sleep(5) # 把1轉換為01 url = 'http://www.tianqihoubao.com/aqi/tianjin-2017' + str("%02d" % i) + '.html' response = requests.get(url=url, headers=headers) soup = BeautifulSoup(response.text, 'html.parser') tr = soup.find_all('tr') # 去除標籤欄 for j in tr[1:]: td = j.find_all('td') Date = td[0].get_text().strip() Quality_grade = td[1].get_text().strip() AQI = td[2].get_text().strip() AQI_rank = td[3].get_text().strip() PM = td[4].get_text() with open('air_tianjin_2017.csv', 'a+', encoding='utf-8-sig') as f: f.write(Date + ',' + Quality_grade + ',' + AQI + ',' + AQI_rank + ',' + PM + '\n')
成功獲取資料。
/ 03 / 天津
01 AQI全年走勢圖
92.5是年均AQI值,從上面科普知識裡可以知道,2017年天津整體空氣質量只能是「良」中的下下等水平,與輕度汙染近在咫尺。
02 AQI月均走勢圖
從月均的走勢圖就能看出,1月的空氣質量最差,8月的空氣質量最好,當也並不是有多好,充其量也就是個「良」!
03 AQI季度箱形圖
箱形圖,顯示一組資料分散情況資料的統計圖。
資料裡有最大值、最小值、中位數和兩個四分位數。
這裡可以看出,2017年天津的季度AQI均值差距不是很大。
但是一、二、四季度有明顯的波動,空氣質量有時會變得很差。
04 PM2.5全年走勢圖
59.87是年均PM2.5值,已經遠超過國家二級標準限值35了。
其實天津給我留下的印象就是天氣經常灰濛濛,時常還會變點顏色,比如黃色~
一年下不了幾次雨,及其乾燥。所以那個最低值11,我猜那時候估計是颳大風。
05 PM2.5月均走勢圖
和AQI的走勢差不多,同樣是1月最高,8月最低。
06 PM2.5季度箱形圖
說實話,看了這個圖,我不知道天津的「大哥」及「姐姐」們是如何做到自強不吸的。
基本上四個季度都超標了,一年不超標的估計也就那麼幾次。
07 PM2.5指數日曆圖
日均PM2.5國家二級標準為75,從上面的熱力圖看,基本上輕度汙染過半了。
另外一月還是重災區,天色黃黃的...
其實每逢霧霾,基本上就是蝸居了!
08 天津全年空氣質量情況
「良」和「輕度汙染」佔了大頭,「優」只能在角落裡瑟瑟發抖,足以說明空氣之差。
/ 04 / 北上廣深
01 北上廣深AQI全年走勢圖
北京月均AQI最低也就50左右,看來今年全年差不多都在「優」以下了。
不過相比前幾年,京津冀空氣已經好了不少(政策),真的。
上海和廣州差不多,深圳與北京算是鮮明對比。
02 北上廣深PM2.5全年走勢圖
北京一如既往的高調。
03 北上廣深全年空氣質量情況
深圳幾乎都是「優」和「良」,上海和廣州和上面說的一樣,北京的「優」已經不少了。
那麼你所在的城市空氣質量又是如何?
原始碼:
連結:https://pan.baidu.com/s/13ERBA9CK9ZbIMYBZnSbJWA 密碼:plen