Info

Cette question est clôturée. Rouvrir pour modifier ou répondre.

The loop in my code is taking longer time. Any way to make it faster? or any other faster way?

1 vue (au cours des 30 derniers jours)
aneps
aneps le 6 Juin 2014
Clôturé : MATLAB Answer Bot le 20 Août 2021
I have to read almost 22 files (.asc format). I made a loop to put all those in a cell array and make the histogram. But unfortunately, this is taking almost 5 minutes!!! This is because the files are larger in size. If I am not making a loop and call them in separate lines (load),without making a cell, concatenate each line into a single matrix, it take only less than 3 minutes. But calling 22 files in separate lines make the code much longer and difficult if I have even more files! Please suggest me a faster method. My code is given below:
for k=1:22
A{k} = load(['E:/MatlabData/Data/file',num2str(k),'.asc']);
end
B=cat(1,A{:});
This code is easy but too slow (~5 minutes if I have 22 files). Instead of this code, if I call the data like following:
A=load('E:/MatlabData/Data/file1.asc');
B=load('E:/MatlabData/Data/file2.asc');
...
...
...
V=load('E:/MatlabData/Data/file22.asc');
B=cat(1,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V);
This make the code faster. Any other way than this to call the files and concatenate in a faster way?
  6 commentaires
aneps
aneps le 7 Juin 2014
Modifié(e) : aneps le 7 Juin 2014
@Geoff Hayes: Yes, drive E is in my computer. The file size vary from 185 kB to 145 MB! Thank you.
aneps
aneps le 7 Juin 2014
@Matt J: It is still the same! thanks.

Réponses (0)

Cette question est clôturée.

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by