Import multiple files and plot data.
10 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Rafael Brognoli Recco
le 16 Juil 2020
Commenté : Arthur Roué
le 21 Juil 2020
Hi,
- I am trying to write a script capable of opening all files from within the same folder.
- Each file has two columns coordinated (X, Y) in .ASC-II format.
- After importing all the files in the same folder, I need to plot all the graphics separately.
- The script I wrote is opening the correct number of files and also naming them correctly, however the 47 cells of myData have the values of the first file, as if it was copying 47 times the file “run_01”.
Could anyone suggest how to overcome this problem?
Thanks
-----
% Import data
run = importfile("D:\Desktop\Teste\run_01", [1, inf]); % describe the direction of the files.
numFiles = 47; % number of files you want to open (they must be inside the same folder)
startRow = 2; % The loop starts from the second file
endRow = inf;
myData = cell(numFiles,1);
for fileNum = 1:numFiles
fileName = sprintf('run_%02d',fileNum);
myData{fileNum} = importfile("D:\Desktop\Teste\run_01",[startRow,endRow]);
end
% To remove NaN cells
for fileNum = 1:numFiles
fileName = sprintf('run_%02d',fileNum);
myData{fileNum, 1} ([1:2,1003:end],:) = [];
end
% plot
figure
for i = 1:length(myData)
plot(myData{i,1}) ;
end
0 commentaires
Réponse acceptée
Arthur Roué
le 16 Juil 2020
Modifié(e) : Arthur Roué
le 16 Juil 2020
Here is the mistake
for fileNum = 1:numFiles
fileName = sprintf('run_%02d',fileNum);
myData{fileNum} = importfile("D:\Desktop\Teste\run_01",[startRow,endRow]);
end
Should be
for fileNum = 1:numFiles
myData{fileNum} = importfile(sprintf('D:\Desktop\Teste\run_%02d',fileNum),[startRow,endRow]);
end
2 commentaires
Arthur Roué
le 21 Juil 2020
No problem. It's basicaly the same solution, but I used your absolute path. The mistake in the original code was that you import always the same file (run_01) with this line
myData{fileNum} = importfile("D:\Desktop\Teste\run_01",[startRow,endRow]);
If my suggestion didn't work, it probably because the absolute path is not the same. The new line works (I think) because file to import is on MATLAB path.
If your problem is solved you can close and/or accept the answer.
Have nice day !
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Text Files 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!