dir function and importing data
Mostrar comentarios más antiguos
Hey guys,
I have a folder called 'KR5' filled with 100 notepad files. Each notepad file has lots of data that I want. I want to read the data from each file and store it.
Here is my approach:
Using a for loop, read and store all of notepad file names into a variable "Direc".
Using another for loop, open each file and extract the data and store it. Here is the code I have so far:
clc;
clear all;
addpath(genpath(pwd));
Direc = dir('KR5');
for i = 1:length(Direc)
Direcname(i) = Direc(i).name;
end
I am getting this error:
??? In an assignment A(:) = B, the number of elements in A and B must be the same.
Can someone help me with this?
Respuesta aceptada
Más respuestas (1)
Geoff
el 29 de Mzo. de 2012
In the loop, index Direcname using curly braces instead of brackets:
Direcname{i} = Direc(i).name;
This is because you're assigning to a cell-array.
Also, it's a good idea to define that cell array before the loop:
Direcname = {};
Or, better still (because you know the size):
Direcname = cell(1, length(Direc));
Since I'm giving aesthetic improvements, it's a good idea to avoid the use of 'i' as the loop variable since it is actually a reserved word (denoting the complex number, i ). There are 51 other single-letter alphas to choose from, and a plethora of more descriptive (more than one letter) options =)
Otherwise, it's looking good.
Cheers
Categorías
Más información sobre File Operations en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!