爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 5779|回复: 1

[源程序] 循环读取文件

[复制链接]

新浪微博达人勋

发表于 2022-4-6 16:54:40 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x
时常有同学在群里问二爷指导手册里面的文件循环读取怎么做,遇到困哪,今天分享一下循环读取文件以nc文件为例;下面是我实操一个例子。

%% 批量读取HadCM3 2-16ka数据
list=dir(['G:\数据库\HadCM3\未加冰盖模拟结果\','*.nc']);%1-8为2,4...16ka数据
len=length(list);%求nc文件的数量
%% 读取HadCM3降水数据并处理
for i=1:len
    ncid=[list(i).folder,'\',list(i).name];%拼装每个nc文件的绝对路劲
    pre=ncread(ncid,'precip');%由于precip是经度*纬度*高度*时间,时间为30年*12个月,高度项为1
    pre=squeeze(pre);%压缩高度维度
    pre=reshape(pre,[96,73,30,12]);%将precip处理成经度*纬度*30年*12个月
    pre=mean(pre(:,:,:,[6 8]),4);%计算每年6-8月平均降水
    pre=mean(pre,3);%计算30年6-8月平均降水
    pre=pre-pre0;%计算pre1-8(30年6-8月平均降水)与PI(30年6-8月平均降水)差值
    eval(['pre',num2str(i),'=','pre(:,:)',';']);%批量命名变量eval
end
% pre1-8依次为2,4...16ka30年6-8月平均降水数据

密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2022-4-22 12:39:31 | 显示全部楼层
谢谢分享,学习了
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表