Per importare i files si può procedere in questo modo:
- identificare il numero di file da importare: se il numero è noto a priori, è sufficiente assegnarlo ad una variabile, in caso contrario si può usare la funzione "dir"
- leggere in un ciclo "for" gli "n" files di input creando il nome del file come stringa in modo automatico ad ogni iterazione
- concatenare, nel corso del loop, le matrice lette
Per rimuovere le colonne dispari (o, che è lo stesso, estrarre le colonne pari) si può procedere sfruttando le funzionalità di "indexing" (
http://uk.mathworks.com/company/newsletters/articles/matrix-indexing-in-matlab.html) di MatLab.
Nell'esempio che segue, vengono letti i 4 files "SA1.txt", "SA2.txt", "SA3.txt", "SA4.txt" e sono riportate le istruzioni per le due modalità di identificazione del numero (4) di files da importare.
% The number of files to be read is known
n_files=4;
% The number of files to be read is unknown
n_files=length(dir('SA*.txt'));
% Initialize the output matrix
M=[];
% Read the input files and concatenate the matrices
for i=1:n_files
M=[M load(['SA' num2str(i) '.txt'])]
end
% Extract the even columns
M1=M(:,2:2:end)