Я хочу создать скрипт в Matlab, где все отдельные объекты связаны с переменной.
Это будет выглядеть так:
M1 = xlsread('BonBon.xls');
M2 = xlsread('Bornfyn.xls');
Дело в том, что у меня есть около 300 файлов .xls, которые я должен назначить.
Есть ли способ сообщить Matlab, чтобы он получил все отдельные файлы в определенной папке (/ подпапке) и присвоил им имя? (мкс)
Я пытался использовать функцию dir, но не могу решить, как определить папки. Получение всех имен файлов в заданном имени папки
поэтому я попробовал http://www.mathworks.com/matlabcentral/newsreader/view_thread/273916 Но еще сложнее понять, как мне оформить этот сценарий. (помимо добавления .xls в список типов файлов).
Искренне
/home/my/data/here
. Что будет на выходе, когда вы наберетеpwd
в командной строке MATLAB? Когда у вас есть имена файлов, вы можете написать цикл, что-то вродеfor ii = 1:len(names) M(ii) = xlsread(names(i)); end
- person darthbith   schedule 26.01.2014names
сама по себе является переменной, в которой хранятся все имена файлов. Если вы будете следовать инструкциям в связанном вопросе, у вас будет переменная с именемallNames
. Каждая строкаallNames
содержит разные имена файлов. Когда вы пишете циклfor
, как я писал выше, вы говорите компьютеру пройти через переменнуюii
одну за другой. Затем он просматриваетii
строкуallNames
и сообщаетxlsread
использовать это имя файла, а результат присваиваетii
строкеM
. Это помогает? - person darthbith   schedule 26.01.2014for ii = 1:len(allNames) M(ii) = xlsread(names(1i)); end
Следовательно: неопределенная функция 'len' для входных аргументов типа 'cell'. В противном случае вы были абсолютно правы в отношении stackoverflow.com/questions/5803915/ -code влияет на общий и общий код. - person chemicaluser3195825   schedule 26.01.2014allFiles = dir( '*.xls' ); allNames = { allFiles.name }; for ii = 1:length(allNames) M(ii) = xlsread(allFiles(ii)); end
но Matlab говорит мне, что allFiles должен быть строкой. - person chemicaluser3195825   schedule 26.01.2014allFiles = dir( '*.xls''String' );
как строки в'String'
делает это. Спасибо! - person chemicaluser3195825   schedule 26.01.2014len
... Я привык к Python :-) - person darthbith   schedule 26.01.2014