Просто нужна помощь с некоторыми из моего кода matlab.Проблемы с последовательным файловым контуром Matlab
%import Sequential files
clc % clear window
clear %clear workspace
numfiles=4;
data=cell(1,numfiles);
for k = 2:numfiles
myfilename=sprintf('J678501%d.mat',k);
data{k}=importdata(myfilename);
end
for a= 1:3
order_directory(a)=data(:,(a+1));
end
**for n = 56:59
F=getfield((data{1,2}),sprintf('order_%d',n));
end**
wavelength=F(:,1);
intensity=F(:,2);
Звёздочка, где мне нужна помощь.
Мои файлы указаны в заказе от order_56 до order_141 (я только что поставил 56:59 на данный момент), однако мне не хватает нескольких заказов (например, order_60 и order_100 - возможно, другие в других файлах .. это непротиворечиво). Как я могу заставить Matlab просто пропустить файл, если его нет, и перейти к следующему файлу?
Благодаря Caz
Вы можете использовать 'dir' перечислить все файлы в определенном каталоге, а затем просто пройдёмся по всем из возможных имен в этом каталоге. Таким образом, вы не будете пытаться читать в файле, который не существует. Вы только что прочитали все файлы в каталоге. – rayryeng
@rayryeng Как бы я это сделал? Я совершенно новый для matlab – CazV
@CazV помог мне работать? Если это так, отметьте его как принятое, чтобы люди знали, что у вас нет этой проблемы, и они могут взглянуть на ваш новый. – David