2012-05-15 3 views
0

У меня есть папка с файлами .mat, и я хочу, чтобы написать цикл для загрузки этих файлов и делать какие-то действия с данными:Петля для загрузки и сохранения файлов .mat

1) Выбрать свою папку с файлами данных

2) Выполните следующий набор операций (псевдокод):

for i = 1:99 
    load 'Data0i.mat' ('Datai.mat', if i > 9); 
    data = data * 10; 
    save data as 'Data0i.mat' to another folder; 
end; 

Что реализация MATLAB?

+0

Ну, это не реализация matlab, это просто алгоритм. У меня проблемы со строками. Как мне изменить папки данных и как предоставлять номера в именах файлов? – myname

+0

есть 'sprintf()' в matlab. вам также может понадобиться 'dir()' для получения списка файлов. – Pavel

+0

Возможный дубликат [Имя файла Matlab с нулевыми номерами] (http://stackoverflow.com/questions/14213442/matlab-file-name-with-zero-padded-numbers) – Shai

ответ

1
inputFolder = 'infolder'; 
outputFolder = 'outfolder'; 

for i = 1:99 
    %# Load data 
    inputFilename = sprintf('%s/%02d.mat', inputFolder, i); 
    load(inputFilename) 

    %# Process data 
    data = data * 10; 

    %# Savedata 
    outputFilename = sprintf('%s/%02d.mat', outputFolder, i); 
    save(outputFilename, 'data') 
end 
Смежные вопросы