Python制作提取指定站点的空气质量数据监控脚本[Python基础]

python

本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理。

以下文章来源于Python干货铺子 ,作者INUYASHA123

 

前言

对于我们下载的多数数据集,我们可能需要提取其中指定的来使用,比如这个空气质量数据集,全国那么多站点,我只想要我研究的区域的站点数据,然而,当我打开文件夹的时候,失望了,因为这些数据都是一个一个的csv文件。有一个方法就是excel可以用脚本把这些单独的csv合并为一个csv,但可能伴随的问题就是数据超出excel的存储上限,so,我们换一种做法提取指定站点的数据。

这次实验用到的数据是全国2014-2020年的站点空气质量数据,每小时的分辨率的,截图看看长什么样子:

 

 

要是一个一个的打开去提取自己需要的,那会疯掉的,So,上神器--Python来完成这次实验操作

 

targets就是你指定的想提取的站点,想提取谁就指定谁,就输入谁的站点代号就可以啦

整体代码如下:

import os

import pandas as pd

# 定义相关参数

dataPath = "./data" # 数据目录

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数据文件

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数据,里面包含了所记录的时间范围的所有要素(比如PM10之类的)的数据

以上是 Python制作提取指定站点的空气质量数据监控脚本[Python基础] 的全部内容, 来源链接: utcz.com/z/530323.html

回到顶部