Sum cumulative value from all files that is summoned in a loop

1 vue (au cours des 30 derniers jours)
SRRellum
SRRellum le 20 Avr 2022
Commenté : SRRellum le 20 Avr 2022
I want to add the row length of the variable 'time' in a file (length(dataset.time)) from multiple datasets that are summoned in a loop. My setup is a follows:
datafolder = ' Z:\Projects\data';
file = dir(datafolder);
for i = 3:105
patient = load(strcat(datafolder,'\',file(i).name));
dataset = patient.table
row_length = length(dataset.time)
sum_length = ?
For now, ' row_length' only outputs the number of rows from the last dataset.
How do I add the total number of rows from dataset 3:105?
Hope you can help
  2 commentaires
Stephen23
Stephen23 le 20 Avr 2022
Modifié(e) : Stephen23 le 20 Avr 2022
SRRellum
SRRellum le 20 Avr 2022
Thanks, good point. This was indeed the easy way out. I will change it

Connectez-vous pour commenter.

Réponse acceptée

Davide Masiello
Davide Masiello le 20 Avr 2022
Inside the loop write
row_length(i) = length(dataset.time);
After the loop, you can calculate the summ of all lengths with
sum_length = sum(row_length);
  1 commentaire
SRRellum
SRRellum le 20 Avr 2022
Thanks for yout help. It works, however it gives the message to consider preallocating. Will look into that.

Connectez-vous pour commenter.

Plus de réponses (1)

David Hill
David Hill le 20 Avr 2022
datafolder = ' Z:\Projects\data';
file = dir(datafolder);
row_length = 0;
for i = 3:105
patient = load(strcat(datafolder,'\',file(i).name));
dataset = patient.table
row_length = row_length+length(dataset.time)
end
  1 commentaire
Stephen23
Stephen23 le 20 Avr 2022
Modifié(e) : Stephen23 le 20 Avr 2022
Fragile/buggy code:
for i = 3:105
Lets try it with some simple, perfectly valid filenames:
csvwrite('+new.txt',1)
csvwrite('-old.txt',1)
csvwrite('test.txt',1)
dir()
+new.txt -old.txt . .. test.txt
Fragile at best, buggy at worst.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Downloads dans Help Center et File Exchange

Produits


Version

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by