How to use a batch mode to import files?

3 Ansichten (letzte 30 Tage)
Chaitanya Bade
Chaitanya Bade am 6 Apr. 2017
Kommentiert: Chaitanya Bade am 6 Apr. 2017
Hi, I have 3 files named 1.xlsx, 2.xlsx, 3.xlsx in a folder. Now, I want to run all the three files at a time using a batch mode. I have written a for loop code but I does not work. It brings out the first result, but it is failing to process all the three files. However, it does not show any error.It just shows the results of the first file and stops.
files = dir('C:\Users\Deakin Uni\Documents\MATLAB\a\*1*');
fNames = {files.name};
%for each file
for k= 1: length(fNames)
% extract file name
fName = ['C:\Users\Deakin Uni\Documents\MATLAB\a\', fNames{k}];
[XDATA, TIMESTEPS] = importfile(fName);
a1 = XDATA - mean (XDATA);
plot(TIMESTEPS, a1);
[peakvals,peaklocs] = findpeaks(a1, 'minpeakdistance',50, 'minpeakheight', 0.00001);
peaktime = TIMESTEPS(peaklocs);
createfigure4(TIMESTEPS, a1, peaktime, peakvals)
saveas(gcf, 'chaitu.fig')
end
Thanks in advance!!
  3 Kommentare
Chaitanya Bade
Chaitanya Bade am 6 Apr. 2017
Bearbeitet: Chaitanya Bade am 6 Apr. 2017
As in? There are 3 files in the folder with the names 1.xlsx, 2.xlsx, 3.xlsx
Chaitanya Bade
Chaitanya Bade am 6 Apr. 2017
Mate, i got you. I found the solution. Thanks!

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

JohnGalt
JohnGalt am 6 Apr. 2017
From this: files = dir('C:\Users\Deakin Uni\Documents\MATLAB\a\*1*');
it looks like you're only loading the first one... shouldn't it be:
files = dir('C:\Users\Deakin Uni\Documents\MATLAB\a\*.xlsx');
  4 Kommentare
JohnGalt
JohnGalt am 6 Apr. 2017
you got the separate graphs sorted?
Chaitanya Bade
Chaitanya Bade am 6 Apr. 2017
Yes. I used the following code saveas(gcf,sprintf('chaitu%d.fig',k));

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Variables finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by