2014-12-02 1 views
0

enter image description hereИмпорт несколько .mat файлов без заголовков

В настоящее время пытаются импортировать следующий через следующий сценарий:

files = dir('C:\Users\student\Desktop\pattern hw4\train\*.mat'); 

for i=1:length(files) 
    A = load(files(i)); % <-- line 7 
end 

Я получаю сообщение об ошибке, хотя:

Error using load 
Argument must contain a string. 

Error in hw4 (line 7) 
    A = load(files(i)); 

После добавления .name I получить сообщение об ошибке:

>> hw4 
Error using load 
Unable to read file 'class1_1.mat': no such file or directory. 

Error in hw4 (line 7) 
    A = load(files(i).name); 

Ok фиксирована и окончательный ответ/решение:

files = dir('C:\Users\student\Desktop\pattern hw4\train\*.mat'); 

dname='C:\Users\student\Desktop\pattern hw4\train\'; 

for i=1:length(files) 
    fname=fullfile(dname,files(i).name); 
    A = load(fname); 
end 

ответ

2

Команда загрузки ожидает имя файла, тогда как dir возвращает структуру. Попытка:

A = load(files(i).name); 
+0

А, теперь появилась новая ошибка! –

+0

Теперь это вопрос пути. Попробуйте: 'curpath = '' C: \ Users \ student \ Desktop \ pattern hw4 \ train \ '; load (sprintf ('% s% s', curpath, files (i) .name); ' –

+0

Поскольку вы действительно помогли исходному вопросу, я отмечу это как ответ. Однако в этом вопросе отправлено полное решение. –

1

Я думаю, вам нужно использовать A = load(files(i).name); в строке 7.

files представляет собой массив структур

Смежные вопросы