Please how can I store all my matrix?

11 vues (au cours des 30 derniers jours)
Inouss
Inouss le 13 Juin 2019
Commenté : Inouss le 13 Juin 2019
Hello,
I made a for loop that imports a database (several matrix), I wanted to store all matrices on a single matrix but I can store only the last one. Please how can I store all the matrix?
for i = 1:length(find([d.isdir]==0))-1
channel = "/channel_"+i+".dat";
location = strcat(location_filename,channel);
location= sprintf('% s', location);
%import Matrix
channel = [importdata(location)];
end
y = channel

Réponse acceptée

James Tursa
James Tursa le 13 Juin 2019
Maybe use a cell array:
channel{i} = [importdata(location)];
Then at the end you can work with the individual matrices as channel{i}, or concatenate all of the channel elements into a single larger matrix.
  3 commentaires
James Tursa
James Tursa le 13 Juin 2019
Modifié(e) : James Tursa le 13 Juin 2019
Sorry, I forgot you had previously used that variable name. Simply pick another name. E.g.,
channels{i} = [importdata(location)];
You might want to pre-allocate channels prior to the loop.
Inouss
Inouss le 13 Juin 2019
Thank you James it works but I would like to access these matrices and be able to draw a plot with all the data.
ps: the matrices contain 2 columns and thousands of lines

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Loops and Conditional Statements dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by