您好,登錄后才能下訂單哦!
這篇文章主要介紹“Python怎么制作提取指定站點的空氣質量數(shù)據(jù)”,在日常操作中,相信很多人在Python怎么制作提取指定站點的空氣質量數(shù)據(jù)問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Python怎么制作提取指定站點的空氣質量數(shù)據(jù)”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
前言
對于我們下載的多數(shù)數(shù)據(jù)集,我們可能需要提取其中指定的來使用,比如這個空氣質量數(shù)據(jù)集,全國那么多站點,我只想要我研究的區(qū)域的站點數(shù)據(jù),然而,當我打開文件夾的時候,失望了,因為這些數(shù)據(jù)都是一個一個的csv文件。有一個方法就是excel可以用腳本把這些單獨的csv合并為一個csv,但可能伴隨的問題就是數(shù)據(jù)超出excel的存儲上限,so,我們換一種做法提取指定站點的數(shù)據(jù)。
這次實驗用到的數(shù)據(jù)是全國2014-2020年的站點空氣質量數(shù)據(jù),每小時的分辨率的,截圖看看長什么樣子:
要是一個一個的打開去提取自己需要的,那會瘋掉的,So,上神器--Python來完成這次實驗操作
targets就是你指定的想提取的站點,想提取誰就指定誰,就輸入誰的站點代號就可以啦
整體代碼如下:
import os import pandas as pd # 定義相關參數(shù) dataPath = './data' # 數(shù)據(jù)目錄 targets = ['1001A','1002A','1003A','1004A','1005A','1006A','1007A','1008A'] # 目標站點 result = [[] for i in range(len(targets))] # 用于保存結果 # 開始遍歷 for filepath in os.listdir(dataPath): # 遍歷每個文件夾 for filename in os.listdir('%s/%s'%(dataPath,filepath)): if not filename.endswith('.csv'): # 去重非csv數(shù)據(jù)文件 continue data = pd.read_csv('%s/%s/%s'%(dataPath,filepath,filename)) for i in range(0,len(data),15): for k in range(len(targets)): try: item = {'date':data['date'][i], # 日期 'hour':data['hour'][i]} # 小時 for j in range(i,i+15): item[data['type'][j]] = data[targets[k]][j] result[k].append(item) except: pass print('%s處理完畢'%filename) # 保存結果 for i in range(len(targets)): pd.DataFrame(result[i]).to_csv('%s.csv'%targets[i],index=False)
Run,啟動就可以運行,結果輸入是這幾個站點的csv數(shù)據(jù),里面包含了所記錄的時間范圍的所有要素(比如PM10之類的)的數(shù)據(jù)
到此,關于“Python怎么制作提取指定站點的空氣質量數(shù)據(jù)”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續(xù)學習更多相關知識,請繼續(xù)關注億速云網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。