for loop in file

3 次查看(过去 30 天)
il147
il147 2021-10-7
Hi , I have problem with making for loop
I have 01~12 files and contain adt. I going to mean each month of adt and mean 1~12, annual adt
Here is my code and please advise any idea
myFolder='C:\Users\yki\2000\01';
filepattern=fullfile(myFolder,'*.nc');
filelist=dir(filepattern);
nFiles=length(filelist);
for i=1:nFiles
filename1= fullfile(filelist(i).folder,filelist(i).name);
ncdisp(filename1);
adt1=ncread(filename1,'adt');
end
adt1=mean(adt1,nFiles);
myFolder='C:\Users\yki\2000\02';
filepattern=fullfile(myFolder,'*.nc');
filelist=dir(filepattern);
nFiles=length(filelist);
for i=1:nFiles
filename2= fullfile(filelist(i).folder,filelist(i).name);
ncdisp(filename2);
adt2=ncread(filename2,'adt');
end
adt2=mean(adt2,nFiles);
myFolder='C:\Users\yki\2000\03';
filepattern=fullfile(myFolder,'*.nc');
filelist=dir(filepattern);
nFiles=length(filelist);
for i=1:nFiles
filename3= fullfile(filelist(i).folder,filelist(i).name);
ncdisp(filename3);
adt3=ncread(filename3,'adt');
end
adt3=mean(adt3,nFiles);
myFolder='C:\Users\yki\2000\04';
filepattern=fullfile(myFolder,'*.nc');
filelist=dir(filepattern);
nFiles=length(filelist);
for i=1:nFiles
filename4= fullfile(filelist(i).folder,filelist(i).name);
ncdisp(filename4);
adt4=ncread(filename4,'adt');
end
adt4=mean(adt4,nFiles);

采纳的回答

Image Analyst
Image Analyst 2021-10-7
I answered this in your duplicate question. You need to sum up the output of ncread() into a variable, then after the loop divide the sum by the number of files.

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Loops and Conditional Statements 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by