Цикл через файлы в папке в matlab
у меня есть набор дней файлов журнала, которые мне нужно разобрать и посмотреть в matlab.
файлы журнала выглядят так:
LOG_20120509_120002_002.csv
(year)(month)(day)_(hour)(minute)(second)_(log part number)
журналы увеличиваются ежечасно, но иногда секунды составляют одну или две секунды (в час), что означает, что мне нужно игнорировать то, что они говорят делать loadcsv
.
у меня также есть другой файл:
LOG_DATA_20120509_120002.csv
который содержит данные за весь час (разные данные).
общая цель -:
loop through each day
loop through each hour
read in LOG_DATA for whole hour
loop through each segment
read in LOG for each segment
compile a table of all the data
Я думаю, вопрос в том, как я могу игнорировать минуты дня, если они разные? Я подозреваю, что это будет путем перебора всех файлов в папке, и в этом случае как мне это сделать?
2 ответа:
перебирать все файлы в папке относительно легко:
files = dir('*.csv'); for file = files' csv = load(file.name); % Do some stuff end
во-первых, вы должны указать свой путь, путь, что ваш
*.csv
файлы здесьpath = 'f:\project\dataset'
вы можете изменить его на основе вашей системы.
затем,
использовать :
files = dir (strcat(path,'\*.csv')) L = length (files); for i=1:L image{i}=csvread(strcat(path,'\',file(i).name)); % process the image in here end
pwd
также можно использовать.