How can i save my result in each different files using FOR?

조회 수: 5 (최근 30일)
MichaelK Kim
MichaelK Kim 2011년 1월 24일
Hi, I trying to save my results in each files using FOR. Total 364 files have to be modified in m.files and the modified variables have to be saved in each varibles or each files without extra modifying.
and the file names is Proj_00001.raw, Proj_00002.raw, Proj_00003.raw, ... , Proj_00363.raw and then after modifying, i want to save my result. the name of my result files will be H1.mat, H2.mat, H3.mat, H4.mat, ..., H363.mat. OR i have to save my result using 'dicomwrite' such as H1.dcm, H2.dcm, H3.dcm,...
Summary!
Proj_00000.raw file have to save at H1.mat or H1.dcm after modification
Proj_00001.raw file have to save at H2.mat or H2.dcm after modification
Proj_00002.raw file have to save at H3.mat or H3.dcm after modification
...
Proj_00363.raw file have to save at H1364.mat or H3641.dcm after modification
this is my code.
for k=1:364
filelist = dir('D:\CMC\Matlab\Projections_Head\*.raw');% call the file list
fname = filelist(k).name;
fid = fopen(fname,'r');
A = fread(fid);
for i = 0:1:767
for j = 0:1:1023
P(1+i,j+1) = 'equation for modification: P is 768x1024 double';
end
end
for s=1:364 %%this is not working at all..
slist = strcat(num2str(s));
sname = strcat('H',slist,'.mat');
savefile = (sname);
save(savefile, P);
end
end
it seems like 'fine'. but there are an error!!
??? Error using ==> save Argument must contain a string.
what am i supposed to do? or write? thank you for helping me. :)
  댓글 수: 3
MichaelK Kim
MichaelK Kim 2011년 1월 24일
did you applied the second FOR loop in your computer?
i mean the FOR s=1:364, this is 4th loof. it isn't working!! yes! there are an error...
Walter Roberson
Walter Roberson 2011년 1월 25일
Why are you saving the same data to each of the files ??

댓글을 달려면 로그인하십시오.

답변 (1개)

Michael Katz
Michael Katz 2011년 1월 24일
Try:
save(savefile,'P');
The second argument to SAVE should be the variable's name, not it's value.
  댓글 수: 2
MichaelK Kim
MichaelK Kim 2011년 1월 25일
hmm., i've change my code according to your solution. but why my matlab keep busy for over 20min... so deperate situation :(
Jan
Jan 2011년 1월 26일
So it would be helpful, if you show us what 'equation for modification: P is 768x1024 double' means in detail.

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Function Creation에 대해 자세히 알아보기

태그

제품

Community Treasure Hunt

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

Start Hunting!

Translated by