From 2D data to a 3D matrix

1 visualizzazione (ultimi 30 giorni)
matnewbie
matnewbie il 24 Mag 2018
Riaperto: Stephen23 il 25 Mag 2018
I have a folder with 2D data stored in 128 files (from number 001 to number 128), whose name has this general form:
7528_00###.txt
where ### represents numbers from 001 to 128. I want to load these data in a 3D matrix in MATLAB, because this is a more manageable data structure. What is the best approach to achieve this task?
  1 Commento
Stephen23
Stephen23 il 24 Mag 2018
Modificato: Stephen23 il 24 Mag 2018
@matnewbie: what file format do the files use? What size are the 2D matrices?

Accedi per commentare.

Risposte (3)

Nicola Bombace
Nicola Bombace il 24 Mag 2018
Based on your comment, you could obtain the filename using a for loop and the function sprintf.
nFiles = 128;
for n = 1 : nFiles
filename = sprintf('%s%03d','7528_00',n);
% Process File
end

Aditya Adhikary
Aditya Adhikary il 24 Mag 2018
for i = 1:128
x = sprintf('7528_00%03d.txt',i);
%load your file using x
end

Stephen23
Stephen23 il 24 Mag 2018
S = dir('7528_00*.txt');
N = numel(S);
A = nan(128,128,N);
for k = 1:N
S(k).name
A(:,:,k) = ... load your data file
end

Categorie

Scopri di più su Just for fun in Help Center e File Exchange

Tag

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by