教程 | 基于Matlab的干旱指数PDSI及CRU全球气象nc数据的处理过程-由nc文件转变为tif文件
全球干旱指数PDSI可从以下网站下载:
http://climexp.knmi.nl/selectfield_obs2.cgi?id=someone@somewher
image.png
从该网站上可直接下载全球1901-2016年的逐月PDSI数据,文件为nc格式,为进一步和其他栅格数据进行计算,需要将nc文件转变为tif文件,因此本文提供一种能够批量转换的处理方式。
首先准备个样例数据
ncdisp('H:\Global\PDSI\scPDSI.cru.3.25.bams2017.GLOBAL.1901.2016.nc');data1=ncread('H:\Global\PDSI\scPDSI.cru.3.25.bams2017.GLOBAL.1901.2016.nc','scpdsi');
data3=data1(:,:,1);
data4=rot90(data3);
data5=flipud(data4);
data5(isnan(data5))=-999;
dlmwrite('样例1.txt',data5,'\t',1,1);
经过上述转换后可得到文本格式的样例数据,结果如下:
然后在文本中他添加经纬度信息,结果如下所示:
添加经纬度信息后,利用arcgis的ASCII码转raster功能,将该文本转变为栅格文件,并进一步输出为tif,假设文件名为样例.tif。
然后加载带有投影信息的其他栅格文件,对样例.tif文件定义投影,投影方式与加载进来的栅格文件保存一致。
经过上述步骤可得到样例数据。接下来进行批量的转换。
[aaaaa,R]=geotiffread('H:\Global\PDSI\example1.tif');%先导入纬度数据info=geotiffinfo('H:\Global\PDSI\example1.tif');
data=ncread('H:\Global\PDSI\scPDSI.cru.3.25.bams2017.GLOBAL.1901.2016.nc','scpdsi');
for year=1901:2016
data1=data(:,:,1+12*(year-1901):12*(year-1900)); %得到每年的12个月数据
data3=sum(data1,3)/12;
data4=rot90(data3);
data5=flipud(data4);
filename=strcat('H:\Global\PDSI\年尺度pdsi\全球',int2str(year),'年PDSI.tif');
geotiffwrite(filename,data5,R,'GeoKeyDirectoryTag',info.GeoTIFFTags.GeoKeyDirectoryTag);
for mon=1:12
data2=data1(:,:,mon);
data4=rot90(data2);
data5=flipud(data4);
filename=strcat('H:\Global\PDSI\月尺度的pdsi\全球',int2str(year),'_',int2str(mon),'月PDSI.tif');
geotiffwrite(filename,data5,R,'GeoKeyDirectoryTag',info.GeoTIFFTags.GeoKeyDirectoryTag);
end
end
通过上述代码即可实现批量处理nc格式的PDSI文件了, 在新的版本中,可以不用样例文件直接进行提取,在VX公众号地学分析与算法中,结果如下:
CRU文件的处理过程
data=ncread('H:\Global\CRU\cru_ts4.01.1901.2016.tmx.dat.nc','tmx');
data3=data(:,:,1);
data4=rot90(data3);
data5(isnan(data5))=-999;
dlmwrite('样例2.txt',data5,'\t',1,1);
其余步骤同上构建一个有投影的样例tif数据,批量读取与转换
[aaaaa,R]=geotiffread('H:\Global\CRU\样例2.tif');%先导入纬度数据
info=geotiffinfo('H:\Global\CRU\样例2.tif');
data=ncread('H:\Global\CRU\cru_ts4.01.1901.2016.tmx.dat.nc','tmx');
for year=1901:2016
data1=data(:,:,1+12*(year-1901):12*(year-1900)); %得到每年的12个月数据
data3=sum(data1,3)/12; %对年数据求平均值,得到年平均最大气温,如果是降水,则直接去掉/12
data4=rot90(data3);
filename=strcat('H:\Global\CRU\tif\year\CRU',int2str(year),'_Tmx.tif');
geotiffwrite(filename,data4,R,'GeoKeyDirectoryTag',info.GeoTIFFTags.GeoKeyDirectoryTag);
for mon=1:12
data2=data1(:,:,mon);
data4=rot90(data2);
filename=strcat('H:\Global\CRU\tif\month\CRU',int2str(year),'_',int2str(mon),'_Tmax.tif');
geotiffwrite(filename,data4,R,'GeoKeyDirectoryTag',info.GeoTIFFTags.GeoKeyDirectoryTag);
end
end
作者:画长空_yin
链接:https://www.jianshu.com/p/1cae03e4452e
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
每日一课(免费看)
Ai尚研修最新免费教程模块:点击以下文章标题直接观看
上下滑动查看更多
系统性实践课程(直播课)
点击课程标题,直接进入课程详情
2、10月23-24日、30日-31日 | SMOKE模型排放清单处理技术及在多模式下实践应用方法与VOCs排放量核算培训班3、10月23-24日、30日 | CASA(Carnegie-Ames-Stanford Approach)模型原理及上机操作实现4、10月23-24日、30日 | 结构方程模型(SEM)高阶应用及建模中特殊问题处理方法研修班5、10月24日 | 同源序列寻找及基因家族进化树构建技术免费直播课6、10月30日-31日 | 野外观测站生态气象数据处理分析实践应用直播课7、10月30-31日、11月6日-7日 | 基于R语言的代理模型(高斯过程、贝叶斯优化、敏感性分析、异方差性等)高级技术应用培训班8、10月30-31日、 11月6日 | 基因家族分析及SCI写作技巧实践技术培训班9、10月30-31日、11月6日-7日 | InVEST模型高级进阶及在生态系统服务供需、碳中和、论文写作等实际项目中的具体应用培训班10、10月30-31日、11月6日 | 基于HEC-RAS数值模拟与GIS水文分析技术的洪水危险性及风险评估实践培训班11、11月13日-14日、20日-21日、27日 | 高分辨率区域气候模式(WRF)实践技术学习及在生态环境、水文、能源等多领域中的应用培训班12、11月20-21日 、27日-28日 | 基于MAXENT模型的生物多样性生境模拟与保护优先区甄选、自然保护区布局优化评估及论文写作技巧高级进阶培训班13、11月20-21日、27日 | Noah-MP陆面过程模型建模方法与站点、区域模拟实践技术应用培训班14、11月20-21日、27日 | 合成孔径雷达干涉测量InSAR数据处理、地形三维重建、形变信息提取、监测等实践技术应用高级培训班15、11月20日-21日 27-28日 | 近地面无人机植被定量遥感与生理参数反演实践技术应用进阶培训班16、11月20日-21日 | 基于MATLAB植被变化趋势(变绿-变黄)分析实践应用培训班17、11月27日-28日 | 面向高校的基于算法的发明专利申请写作方法培训班
上下滑动查看更多
系统性实践课程(视频课程,可长期观看)
视频教程+课件及代码资料+云导师长期辅导
(点击数据标题,直接进入)
上下滑动查看更多
数据资源(一键免费获取)
Ai尚研修海量资源(数据、课件、书籍、视频教程)一键免费领取
(点击数据标题,直接进入)
土利用数据
上下滑动查看更多
扫码联系小编,视频课程最高享受7.5折优惠
END
超级会员专享
如何成为超级会员:
1.凡参加Ai尚研修收费课程即为超级会员
2.充值3500元即为Ai尚研修超级会员;
超级会员特权:
1.参加直播与现场课程专享400元会员优惠,同时成为Ai尚研修推广大使,推荐参会分享收益。
2.购买Ai尚研修平台导师视频课程(含导师随行长期指导),享受8.5折优惠。
3.免费享受Ai尚研修会议平台中会员专享下视频课程。
4.长期免费参与每月4期针对地学领域简学实用公开课(优先、无门槛)
5.免费参与任何一门课程开设的导师面对面线上答疑交流。
6.Ai尚研修资源站分享中数据免费下载;
7.会员既成为Ai尚研修合作伙伴,可以进行技术文章、视频教程投稿,分享收益红利,同时所在单位可以通过Ai尚研修新媒体平台进行合作及招聘推广。
声明: 本号旨在传播、传递、交流,对相关文章内容观点保持中立态度。涉及内容如有侵权或其他问题,请与本号联系,第一时间做出撤回。
Ai尚研修丨专注科研领域
技术推广,人才招聘推荐,科研活动服务
科研技术云导师,Easy Scientific Research