How can I load multiple samples in a for loop

I am trying to write a program that runs multiple samples but I can not figure out how to load a different sample for each iteration of the for loop.
For example:
sample1='/home/examplefilename.DTA';
sample2='/home/examplefilename2.DTA';
sample3='/home/examplefilename3.DTA';
q = inputdlg('How many samples were loaded?');
nsamples = str2double(q);
for h=1:nsamples;
[xd,yd,Pars]=eprload(sample(h));
xIndex = find(yd==max(yd(xd>=2600 & xd<=2850)), 1, 'first');
B = xd(xIndex);
v=Pars.MWFQ;
disp(sample(h))
end
This gives me the error message 'Undefined function or variable 'sample'.

 Akzeptierte Antwort

Joseph Cheng
Joseph Cheng am 24 Jun. 2015
Bearbeitet: Joseph Cheng am 24 Jun. 2015

1 Stimme

that is because sample is undefined but sample1 sample2 and sample3 is what you defined. how you're calling out that last line you should build sample{} as a cell array
sample{1}='/home/examplefilename.DTA';
sample{2}='/home/examplefilename2.DTA';
sample{3}='/home/examplefilename3.DTA';
q = inputdlg('How many samples were loaded?');
nsamples = str2double(q);
for h=1:nsamples;
%redacted
disp(sample(h))
end

1 Kommentar

Joseph Cheng
Joseph Cheng am 24 Jun. 2015
and since we do this you don't need the inputdlg and you can get the size/length/numel of sample to calculate nsamples.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Hilfe-Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by