Borrar filtros
Borrar filtros

Sir i have 200.mat file in one folder and i want program that read it automatically without merging the files

1 visualización (últimos 30 días)
I have folder name 1 which contain 1B.mat file to 193B.mat file. I want to read directly this files with merging in single .mat file or using direclty call by for loop
clear
PathName = uigetdir;
file_all = dir(fullfile(PathName,'C:\User:\DELL:\Desktop:\F1folder:\1'));
matfile = file_all([file_all.isdir] == 0);
clear file_all PathName
%d=dir('*.mat'); % get the list of files
x=[]; % start w/ an empty array
for i=1:length(matfile)
x=[x;load(matfile(i).name)]; % read/concatenate into x
end
b=[];
for j=1:length(x)
b=[b; x(j, 1).variable1];
end
FileName = [matfile(i,1).name(1:end-9),'.mat'];
save(FileName,'matfile','x','b');
showing error
Index in position 2 exceeds array bounds.
Error in Untitled2 (line 15)
FileName = [matfile(i,1).name(1:end-9),'.mat'];

Respuestas (2)

Jan
Jan el 7 de En. de 2019
Editada: Jan el 7 de En. de 2019
file_all = dir(fullfile(PathName,'C:\User:\DELL:\Desktop:\F1folder:\1'));
This is strange: User names and other folder names cannot contain colons. I guess you mean:
file_all = dir(fullfile(PathName,'C:\User\DELL\Desktop\F1folder\1'));
Clearing variables is rarely useful in Matlab. Omit this to simplify your code:
clear file_all PathName
You can replace
b=[];
for j=1:length(x)
b=[b; x(j, 1).variable1];
end
by:
b = [x.variable1];
This is nicer and faster.
  3 comentarios
jaypal singh
jaypal singh el 7 de En. de 2019
Simply i have one folder it's name is '1' and it contains 1B-193B.mat files . I want to call directly this files 193B.mat files
Jan
Jan el 7 de En. de 2019
"getting errore" is not clear. Please post your code and the complete error message.
What does "I want to call directly this files 193B.mat files" mean?

Iniciar sesión para comentar.


KSSV
KSSV el 7 de En. de 2019
FileName = [matfile(i,1).name,'.mat'];
The above line is enough....
  1 comentario
jaypal singh
jaypal singh el 7 de En. de 2019
Simply i have one folder it's name is '1' and it contains 1B-193B.mat files . I want to call directly this files 193B.mat files

Iniciar sesión para comentar.

Categorías

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

Etiquetas

Productos


Versión

R2018a

Community Treasure Hunt

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

Start Hunting!

Translated by