Trying to input a number of files from a matrix

5 visualizaciones (últimos 30 días)
Saar Peles
Saar Peles el 16 de Sept. de 2020
Editada: Walter Roberson el 17 de Sept. de 2020
I'm not sure why this isn't working but I'm just trying to load multiple files from a folder and it's not reading my variables in the matrix as a string. I tried converting to chars but I obviously need more than 1 char based on the example below.
subName = ["10", "12"];
InputFolder = 'F:\Graph Data\';
for i = 1:(size(subName)) %through the size of the number of input files
load([InputFolder,'S',(subName(i)),'_data']);
end
I'd appreciate any help

Respuesta aceptada

Walter Roberson
Walter Roberson el 16 de Sept. de 2020
>> subName = ["10", "12"]; size(subName), 1:size(subName)
ans =
1 2
ans =
1
size() with a single parameter always returns a vector with at least two elements. When you give the colon operator a non-scalar value (such as a vector of length 2), then it ignores everything except the first value... which in this case is 1, the number of rows in subName.
load([InputFolder,'S',(subName(i)),'_data']);
You should probably be using something like
load( fullfile(InputFolder, "S" + subName(i) + "_data.mat") )
and better yet would be to assign the result of load() to a variable, instead of "poofing" variables into existence.
  2 comentarios
Saar Peles
Saar Peles el 17 de Sept. de 2020
Thanks I appreciate the help. One thing though, what would I use in place of size()?
Walter Roberson
Walter Roberson el 17 de Sept. de 2020
Editada: Walter Roberson el 17 de Sept. de 2020
numel()

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Simulink Functions en Help Center y File Exchange.

Etiquetas

Productos


Versión

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by