如何使用Python批量提取指定的站点空气质量数据

这篇文章主要为大家展示了“如何使用Python批量提取指定的站点空气质量数据”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何使用Python批量提取指定的站点空气质量数据”这篇文章吧。

创新互联是专业的汾阳网站建设公司,汾阳接单;提供成都网站设计、成都网站建设,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行汾阳网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!

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

如何使用Python批量提取指定的站点空气质量数据

如何使用Python批量提取指定的站点空气质量数据

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

如何使用Python批量提取指定的站点空气质量数据

targets就是你指定的想提取的站点,想提取谁就指定谁,就输入谁的站点代号就可以啦,整体代码如下:

import osimport 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之类的)的数据  
OK,先到这里。

以上是“如何使用Python批量提取指定的站点空气质量数据”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!


当前题目:如何使用Python批量提取指定的站点空气质量数据
标题来源:http://pwwzsj.com/article/pieogs.html