Reading multiple ascii files and generate 3D matrix

5 visualizzazioni (ultimi 30 giorni)
Hello
I have 20 ascii files with a name (A1, A2, A3...A20) each one has 50000 row and 200 column. I am trying to import and read this files and save data in 3D matrix with dimensions (50000*200*20)
I used below code but it is not getting through
Folder = 'D:\My_Files';
Pattern = fullfile(Folder, 'A1');
Files = dir(Pattern);
A = [];
for k = 1 : length(Files)
baseFileName = Files(k).name;
fullFileName = fullfile(Folder, baseFileName);
fprintf(1, 'Now reading %s\n', fullFileName);
data = importdata(fullFilename);
A = cat(3, A, data);
end
when I run code I got error Undefined function or variable 'fullFilename'. Error in New (line 11) data = importdata(fullFilename);

Risposta accettata

Walter Roberson
Walter Roberson il 14 Mag 2016
data = importdata(fullFileName);
MATLAB is case-sensitive.
  6 Commenti
Ali Kareem
Ali Kareem il 14 Mag 2016
Modificato: Walter Roberson il 16 Mag 2016
Hello,
Thank you so much for your reply. Please, I checked all files. all has (5520*9). but I still found in my structure. A (1*1*18) cell, Data (1*1 struct). and inside data files Data(5520*9). I still can not find other data. I tried to find the other data but I failed. I used val(:,:,1) and I got error (Undefined function or variable 'val'.)
Walter Roberson
Walter Roberson il 16 Mag 2016
Folder = 'D:\My_Files';
Pattern = fullfile(Folder, 'A*');
Files = dir(Pattern);
nFiles = length(Files);
A = zeros(5520,9,nFiles);
for k = 1 : nFiles
baseFileName = Files(k).name;
fullFileName = fullfile(Folder, baseFileName);
fprintf(1, 'Now reading %s\n', fullFileName);
data = importdata(fullFilename);
A(:,:,k) = data.Data;
end

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Startup and Shutdown in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by