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

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

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

9e85bf59937f4b2aabf5b4a271df5c12~tplv-tt-shrink:640:0.image

 

前言

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

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

f9769bf6076b4bcf9188951734d52dc2~tplv-tt-shrink:640:0.image

 

65b9057d6465476eab8bf09c409ac8c6~tplv-tt-shrink:640:0.image

 

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

57e3e497d85f41438b37a7e467853514~tplv-tt-shrink:640:0.image

 

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之类的)的数据

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值