【SWAT模型】Python批处理SWAT模型气象要素数据

 一、前言

        记录下SWAT气象数据构建过程,由于我的研究区位于干旱区且研究区面积大,实测的气象站点稀少,时间序列上也不满足要求,因此我们一般都会采用气象数据产品来代替实测站点数据,那么就涉及到对气象要素进行批处理,处理成SWAT模型输入数据的格式,本篇博文就是记录下自己处理数据的过程和经验,以防自己忘记。

1、气象数据

         SWAT模型输入的气象数据主要包括六个气象要素,分别是日降水量、日最高温、日最低温、日相对湿度、日平均风速以及日太阳辐射,这些要素都有相应的气象数据集,后面会整理出一些气象要素所对应的气象数据产品。这个博文主要是分享批处理气象数据的代码。

2、气象数据处理

 2.1 气象数据格式

气象数据一般是存储为nc格式,我下载的各个气象要素的格式如下: 

(1)日降水量、日最高温、日最低温,这三个气象要素是每年存储为一个nc文件,如图所示:

(2) 日相对湿度和日平均风速,这两个气象要素是41年的逐日数据都存储在一个nc文件里,如图所示:

(3)日太阳辐射,我是下载的ERA5_Land中的气象数据集,这个数据下载后是每个月一个nc文件,每个压缩包里面是一个名为Data.nc的数据,如图所示:

        之前我采用的方法是,将nc数据批量转为tiff,然后利用代码来批量提取值,主要在arcgis中的IDLE中运行,这种方法我也用过,非常的耗费时间(苦哈哈的我还花了一段时间去处理,想想就心酸),有需要的话我也可以总结一下这个方法。

2.2 站点经纬度提取

       日降水量、日最高温、日最低温、日相对湿度、日平均风速这五个气象要素是利用python代码,将nc文件里的数据按照站点的经纬度,直接提取每个站点1980-2020年的气象数据值。提值之前我们需要每个站点的经纬度,这个我们可以利用arcgis中的“栅格转点”以及其他工具,然后在属性里添加字段,计算经纬度坐标,然后将属性表导出来(不懂的可以百度一下如何操作)。

最后我们就得到了一张包含站点名称和经纬度的excel表,如图所示:

2.3 nc文件提值到Excel文件的代码

代码来源:NCDC气象数据的提取与处理(四):python批量读取、写入nc数据经纬度格点数值-CSDN博客

利用这个代码将每个气象要素从nc提值到Excel,具体提取效果,如下图所示:

# 读取站
  • 29
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wennnndo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值