У меня есть несколько файлов с разной длиной.
файл 1 - это текстовый файл длиной 86400 X 10
файл 2 представляет собой файл .csv длиной 144 X 10
Теперь это тот случай, когда оба файла содержат все данные, но во многих случаях я пропускаю отметки времени посередине, поэтому длина файла1 составляет 1000-86400 X 10
и файл 2 10-144 X 10
Теперь я хочу написать третий файл длиной 144 X 20, включающий все столбцы файла 2 и файла 1 (я в среднем 86400 до 144).
Моя проблема в том, что я не могу правильно сопоставить время для создания третьего файла
Любая помощь?
file2
datetime, B1, B2, B3, B4, B5, B6 ......
9/15/2010 0:00, 8.8, 3.8, 2.8, 7.3, 0, 9.9
9/15/2010 0:10, 10.1, 8.4, 5.1, 7.7, 0, 8.1
9/15/2010 0:20, 8.8, 5.4, 7.6, 7.1, 0, 10.3
9/15/2010 0:30, 5.7, 8.8, 7.1, 1.6, 0, 6.8
9/15/2010 0:50, 7.9, 9.2, 6.4, 6.2, 0, 8.4
9/15/2010 1:20, 0.6, 5.85, 8.1, 9.8, 0, 0.6
файл 1
datetime, A1, A2, A3, A4, A5, A6......
9/15/2010 0:00:01, 8.8, 3.8, 2.8, 7.3, 0, 9.9
9/15/2010 0:00:02, 10.1, 8.4, 5.1, 7.7, 0, 8.1
9/15/2010 0:00:03, 8.8, 5.4, 7.6, 7.1, 0, 10.3
9/15/2010 0:00:09, 5.7, 8.8, 7.1, 1.6, 0, 6.8
9/15/2010 0:00:10, 7.9, 9.2, 6.4, 6.2, 0, 8.4
9/15/2010 1:00:03, 0.6, 5.85, 8.1, 9.8, 0, 0.6
Я использую для чтения файлов
fid = fopen('file1.csv', 'rt');
a = textscan(fid, '%s %f %f %f %f %f %f', ...
'Delimiter',',', 'CollectOutput',1, 'HeaderLines',1);
fclose(fid);
M = [datenum(a{1}) a{2}]
fid = fopen('file2.txt', 'rt');
b = textscan(fid, '%s %f %f %f %f %f %f', ...
'Delimiter',',', 'CollectOutput',1, 'HeaderLines',1);
fclose(fid);
N = [datenum(b{1}) b{2}]
Как мне записать третий файл со всеми столбцами файла 1 и файла2 с соответствующими временными метками в том же формате, что и файл 2 ??
Я пытаюсь записать третий файл как
datetime, B1, B2, B3, B4, B5, B6 ...... A1 A2 A3 A4 .......
9/15/2010 0:00, 8.8, 3.8, 2.8, 7.3, 0, 9.9 x
9/15/2010 0:10, 10.1, 8.4, 5.1, 7.7, 0, 8.1 y
9/15/2010 0:20, 8.8, 5.4, 7.6, 7.1, 0, 10.3 z
9/15/2010 0:30, 5.7, 8.8, 7.1, 1.6, 0, 6.8 ..
9/15/2010 0:50, 7.9, 9.2, 6.4, 6.2, 0, 8.4
9/15/2010 1:20, 0.6, 5.85, 8.1, 9.8, 0, 0.6 ....
Любая помощь высоко ценится
Спасибо