Change the name of array in each iteration
1 次查看(过去 30 天)
显示 更早的评论
I would like to group together in a Matrix some data for each year. For example for year 2000 i would like to create the Matrix C_2000 for 2001 C_2001 etc. My code is the following, my problem is that i don't know how i should write the name of the matrix, since when i am using C_ye Matlab doesn't understand ye like a variable.
for yy=2000:2010
ye=num2str(yy);
C_ye=[];
path =strcat('e:\test\',ye,'\');
filefolder=strcat(path,'*.dat');
files=dir(filefolder);
for i=1:length(files)
filename=strcat(path,files(i).name);
yr=filename(42:43);
doy=filename(39:41);
doy=str2double(doy);
yr=str2double(yr);
A=importdata(filename);
B=A.data;
hh=floor(B(:,1));
mm=floor((B(:,1)-hh)*60);
ss=((B(:,1)-hh)*60-mm)*60;
mm=round(mm+ss/60);
yr=repmat(yr,size(B,1),1);
doy=repmat(doy,size(B,1),1);
C_ye=[C_ye yr doy hh mm B(:,2)];
end
cleavars -except C_ye
end
Thank you, Kostas
0 个评论
采纳的回答
Sean de Wolski
2011-12-6
Don't Do It!
FAQ:4.6
More:
doc cell
is probably a good place to start. As far as simple help, change the () to {};
C = cell(5,1);
for ii = 1:5
C{ii} = magic(ceil(rand*10));
end
% a 5x1 cell array with randomly sized magic squares
3 个评论
更多回答(1 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Matrix Indexing 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!