日本sumdoy产品介绍(Matlab代码批处理中国地面气象日值数据集(2400站点数据集))

Posted

篇首语:临文乍了了,彻卷兀若无。本文由小常识网(cha138.com)小编为大家整理,主要介绍了日本sumdoy产品介绍(Matlab代码批处理中国地面气象日值数据集(2400站点数据集))相关的知识,希望对你有一定的参考价值。

日本sumdoy产品介绍(Matlab代码批处理中国地面气象日值数据集(2400站点数据集))

气象数据一直是一个价值较高的数据,它被广泛用于各个领域的研究当中。地理遥感生态网平台www.gisrs.cn提供的气象数据包括有气温、气压、相对湿度、降水、蒸发、风向风速、日照等多种指标,但是包含了这些全部指标的气象数据却较难获取,即使获取到了也不能随意分享。

1级目录

文件名

PRS

SURF_CLI_CHN_MUL_DAY-PRS-10004-YYYYMM.TXT(本站气压)

TEM

SURF_CLI_CHN_MUL_DAY-TEM-12001-YYYYMM.TXT(气温)

RHU

SURF_CLI_CHN_MUL_DAY-RHU-13003-YYYYMM.TXT(相对湿度)

PRE

SURF_CLI_CHN_MUL_DAY-PRE-13011-YYYYMM.TXT(降水)

EVP

SURF_CLI_CHN_MUL_DAY-EVP-13240-YYYYMM.TXT(蒸发)

WIN

SURF_CLI_CHN_MUL_DAY-WIN-11002-YYYYMM.TXT(风向风速)

SSD

SURF_CLI_CHN_MUL_DAY-SSD-14032-YYYYMM.TXT(日照)

GST

SURF_CLI_CHN_MUL_DAY-GST-12030-0cm-YYYYMM.TXT(0cm地温)

Matlab:中国地面气象日值数据集提取所需省份全部站点数据 代码结构: (1)Input:8个变量,每年12个月,每年96个txt文件; (2)目标:多年循环,提取所需站点; (3)Output:一个子变量一个表,全年数据放入一个sheet中,不同年份放入不同sheet中 输入数据命名基本为默认:

%%%%% @LastEditors  : 地理遥感生态网平台 % @Date         : 2021-12-01 20:00 % @LastEditTime : 2021-12-07 22:00 % @Description  : 全系列标准化气象数据的处理txt2excel;注意对每个输出结果进行检查% @Objective    : 按类输出所需省份全部年份n个气象站点数据%%clear;clc;%% 0. 前期输入输出&定义% 输入txt根路径txt_Path='D:\\科研数据\\metadata\\2010_2017\\';% 输出xls根路径xls_Path='D:\\科研数据\\metadata\\xls2010_2017\\';% 预分配中间变量内存,列数根据元数据类别数目确定(注意按需修改)A11=zeros(68,11);%3 RHU相对湿度;5 EVP蒸发;% 按年读取全部txt文件% year by yearfor yy = 2010:2017    year = num2str(yy);    txt_file=fullfile(txt_Path,year,'\\');        txt_list=dir(strcat(txt_file,'*.txt'));%列出路径下所有txt文件% 判别平闰年,确定月天数,计算doy         if (mod(yy,4)==0 && mod(yy,100)~=0 || mod(yy,400)==0)    mon2day=[31 29 31 30 31 30 31 31 30 31 30 31]; % 闰年各月天数    else    mon2day=[31 28 31 30 31 30 31 31 30 31 30 31]; % 平年各月天数    end     doy=sum(mon2day);% 根据doy预分配输出数据和表头(注意按需修改)        evp_d20=zeros(66,4+doy);    evp_E601=zeros(66,4+doy);    title1,1='station';    title1,2='lat';    title1,3='lon';    title1,4='altitude';    for dd=1:doy        title1,4+dd=strcat('doy',year,num2str(dd,'%03d'));    end%% 1. 集成EVP结果% month by monthi=1;m=1;%第1个变量,排序根据txt_list来确定m1=1+12*(m-1);%每个变量的第1个txtm0=12*(m-1);m12=12*m;%每个变量的第12个txtfor mm=m1:m12    evp_name=txt_list(mm).name;    evp_mm=load(fullfile(txt_file,evp_name));%原始txt文件读成表    n=1;    ss_1=53*mon2day(mm-m0)+1;%51053第1天    ss_2=(53+68-1)*mon2day(mm-m0)+1;%52313第1天% day by day    for dm=0:(mon2day(mm-m0)-1)%1个月每天的循环        for ss=(ss_1+dm):mon2day(mm-m0):(ss_2+dm)%68个站点提取同一天            A11(n,:)=evp_mm(ss,:);            n=n+1;        end        A11(61,:)=[];% delete 51886	剔除不需要的站点        A11(66,:)=[];% delete 52267	注意上一个删除后位次67需减去1        evp_d20(:,1:3)=A11(1:66,1:3);        evp_E601(:,1:3)=A11(1:66,1:3);        evp_d20(:,4)=A11(1:66,4)*0.1;%altitude,0.1米        evp_E601(:,4)=A11(1:66,4)*0.1;%altitude,0.1米        evp_d20(:,4+i)=A11(:,8)*0.1;%小型蒸发量,0.1mm        evp_E601(:,4+i)=A11(:,9)*0.1;%大型蒸发量,0.1mm              i=i+1;        clear A11;        n=1;         endend% 经纬单位(度、分),转换为度lat_int=floor(evp_d20(:,2)*0.01);lat_decimal=(evp_d20(:,2)*0.01-lat_int).*100/60;lat=lat_int+lat_decimal;lon_int=floor(evp_d20(:,3)*0.01);lon_decimal=(evp_d20(:,3)*0.01-lon_int).*100/60;lon=lon_int+lon_decimal;evp_d20(:,2)=lat;evp_E601(:,2)=lat;evp_d20(:,3)=lon;evp_E601(:,3)=lon;% 质量控制,剔除异常值(matlab固有bug,查找替换不完全,采用excel查找替换)% evp_d20(evp_d20(:,5:end)==evp_d20(1,274))=nan;% % evp_d20(evp_d20(:,5:end)>32765)=nan;% evp_E601(evp_E601(:,5:end)==evp_E601(1,5))=nan;% check1=find(evp_d20==3276.6);% check2=find(evp_E601==3276.6);% 输出,sheet名改为年份,所有年份,全年存在一个excel表中writecell(title,strcat(xls_Path,'EVP_d20.xlsx'),'Sheet',year,'Range','A1');writematrix(evp_d20,strcat(xls_Path,'EVP_d20.xlsx'),'Sheet',year,'Range','A2');writecell(title,strcat(xls_Path,'EVP_E601.xlsx'),'Sheet',year,'Range','A1');writematrix(evp_d20,strcat(xls_Path,'EVP_E601.xlsx'),'Sheet',year,'Range','A2');clear doy title;end

通过这样就可以得到逐年的所需站点的数据集了,方便又快捷!如果对您有帮助的话请点赞转发支持下!

数据来源请引用:中国日值气象站点数据集.地理遥感生态网科学数据注册与出版系统(http://www.gisrs.cn/DOI),2022.DOI:10.12020/2022090501

————————————————

版权声明:本文为CSDN博主「地理遥感生态网」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:Matlab代码批处理中国地面气象日值数据集(2400站点数据集),提取所需省份全部站点数据_地理遥感生态网的博客-CSDN博客

相关参考

灰度图像二值化处理matlab(图像二值化的阈值求法)

图像二值化的操作,就是寻找一个合适的阈值T,把图像中所有像素值小于等于该阈值的像素点设置为一个像素值,同时把图像中所有像素值大于该阈值的像素点设置为另一个像素值。也就是说,二值化之后整幅图像中只有两种...

灰度图像二值化处理matlab(图像二值化的阈值求法)

图像二值化的操作,就是寻找一个合适的阈值T,把图像中所有像素值小于等于该阈值的像素点设置为一个像素值,同时把图像中所有像素值大于该阈值的像素点设置为另一个像素值。也就是说,二值化之后整幅图像中只有两种...

怎样用matlab给数据画曲线图(「四」MATLAB语言之二维绘图操作)

...句柄对该图形元素进行操作,而不影响其他部分。下面先介绍绘制二维图形的高层

数学函数式组利用MATLAB验证(Matlab基础入门手册(第四章 数据类型))

...int8(其他见下表)取值范围intmax/intmin测试类型class3.概念Matlab支持整数数据的1个,2个,4个和8个字节的存储,再分为有符号和无符号,总共8个整型类别。整型类型整型类别取值范围函数有符号的8位整数-2^7至2^7-1int8有符号的16位...

玩具流星球(375:玩具历史上的神奇代码(三))

...宜了这种三赢的事儿,又怎么能不成功呢而源于美国又在日本大卖的微星小超人反过来再次影响了美国的厂商此时美国MEGO公司所生产的8英寸人偶广受好评但从蝙蝠侠到人猿星球所有产品都是从漫画、电视节目和电影中获得的授...

玩具流星球(375:玩具历史上的神奇代码(三))

...宜了这种三赢的事儿,又怎么能不成功呢而源于美国又在日本大卖的微星小超人反过来再次影响了美国的厂商此时美国MEGO公司所生产的8英寸人偶广受好评但从蝙蝠侠到人猿星球所有产品都是从漫画、电视节目和电影中获得的授...

玩具流星球(375:玩具历史上的神奇代码(三))

...宜了这种三赢的事儿,又怎么能不成功呢而源于美国又在日本大卖的微星小超人反过来再次影响了美国的厂商此时美国MEGO公司所生产的8英寸人偶广受好评但从蝙蝠侠到人猿星球所有产品都是从漫画、电视节目和电影中获得的授...

明电变频器故障代码E00(解密日本280个巅峰科技,让你了解日本高端工业)

封面图来源|hippopx近年来,日本半导体芯片企业的节节败退,让媒体们开始对日本的现状弹冠相庆。但很多人会发现,日本在很多方面都是遥遥领先的。下面是对日本巅峰科技的总结,文章讲的很详细,请耐心看完。1、全球单一...

日本pam阳离子(污水处理中常用药剂介绍)

水处理剂是工业用水、生活用水、废水处理中必需的化学药剂,经过运用这些化学药剂,可使水到达的质量要求。它的首要效果是节制水垢和污泥的构成、削减泡沫、削减与水接触的资料侵蚀、除去水中的悬浮物和有毒物质、除...

日本安川变频器(安川变频器过载OL故障代码详解)

安川变频器是日本电机株式会社生产的世界知名的变频器品牌,主要用于三相异步交流电机速度的控制和调节。在安川变频器使用过程中,OL故障(过载)是最常见的故障之一。安川变频器OL故障有三个报警代码,分别是OL1,OL2...