R语言批量处理TRMM降雨数据

最近在使用TRMM遥感降雨数据,下载的源数据是bin格式的,要转成tif格式的才能供后续研究使用,下载的数据文件中提供了MATLAB与Fortran两种读取方式,一开始尝试使用MATLAB读取,发现效率很低;后来经过搜索,使用R可以非常方便快速的实现bin到tif的批量转换

1、准备工作

安装R后需要安装raster、gdal、Rsenal三个包(可能安装带有)


2、批处理脚本

setwd("你的工作空间(文件存放目录)");
library(raster) 
trmm <- raster(xmn=0, xmx=360, ymn=-50, ymx=50, ncol=1440, nrow=400) 
files <- list.files(pattern='.bin') 
for (f in files)  {   # for all files 
  trmm[] <- readBin(f, 'double', n=576000, size = 4, endian='big') 
  x <- flip(rotate(trmm), 'y') 
  x <- writeRaster(x, extension(f, 'tif')) 
} 

非常简单,只需要几行代码,即可实现bin->tif的批量转换

3、处理结果

TRMM数据范围为180W-180E,50S-50N;在ArcGIS中打开,可以看到转换后的tif是完全正确可用的。
这里写图片描述


4、后续计划

4.1 TRMM降雨精度评估

需要对站点降雨插值到TRMM统一分辨率进行日、月、年尺度评价。这里就带来一个问题,插值方法的选取(IDW与Co/kriging)可能IDW简单,现有采用的大都是IDW插值,但是研究表明,站点的降水量与高程显著相关。因此co/kriging(协同克里金)方法精度更高。

4.2 站点降雨插值

无论采用哪种插值方法,都需要编写批处理工具,还好通过搜索,R提供了强大的空间分析包gstat,其中就包括协同克里金方法,后面采用gstat对站点降雨进行批处理

5、总结

R是个非常有用的工具,值得总结常用的地学工具。

参考文章

[1]http://r-sig-geo.2731867.n2.nabble.com/Spatial-rainfall-or-precipitation-data-td6787851.html
[2]http://gis.stackexchange.com/questions/170137/converting-binary-trmm-to-geotiff-using-r
[3] http://blog.csdn.net/smileliaohua/article/details/7994150
[4] http://r.789695.n4.nabble.com/Cokriging-td4661766.html
[5] http://r-video-tutorial.blogspot.com/2011/04/cokriging-with-gstat-videotutorial.html

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值