меня Дата & время в интервалах один час (3600 секунд) в числовом формате, например, 0,3600, 7200, 10800, 14400, 18000 и т.д. Я Дата начала работы и время, например 0 соответствует 2005/06/01 01:00 в формате «yyyy/mm/dd HH: MM».Дата преобразования времени: в Дата Время
Я пишу эти данные в файл Excel, поэтому я ищу способ, которым я могу преобразовать время, указанное в Час (в секундах), в Дата Время (2005/06/01 01:00, 2005/06/01 02:00 и т. Д.) перед тем, как писать в файл excel.
Я изучил функции «datenum» и «datestr», но они не полезны, поскольку я не могу дать им настроенное время начала i.e (0 соответствует 2005/06/01 01:00). Может быть, если кто-то может помочь мне указать мне в правильном направлении.
tempMatrix = [NrID time_inSec ff X Y];
tempMatrix_dataCell=num2cell(tempMatrix);
col_header={'NrID','Time','ff','X','Y'};
data_for_xls_file=[col_header; tempMatrix_dataCell];
xlswrite('My_file.xls',data_for_xls_file);
time_inSec - это столбец со значениями 0, 3600, 7200, 10800 и т.д., которые необходимо преобразовать.
Когда я использую datenum возвращает 7.3246e + 05 так, когда я добавляю 3600, чтобы получить 2005/06/01 02:00 и передать его в СТРОКА-ДАТЫ возвращается 2015/04/10 1:00.
temp_time = datenum('2005/06/01 01:00','yyyy/mm/dd HH:MM')
Названные функции '' datenum' и datestr' полезны, и вы можете использовать их, чтобы делать то, что вы хотите. Пожалуйста, предоставьте код (минимально необходимый), чтобы воспроизвести вашу проблему. – thewaywewalk
'datenum' делает число, которое находится в единицах дней. Просто конвертируйте свои «часы» со своих единиц секунд в несколько дней и добавьте их к датам даты. Затем конвертируйте их в номера дат Excel, используя ['m2xdate'] (http://www.mathworks.com/help/finance/m2xdate.html) – Dan
@ Dan Спасибо, я работал в подразделениях diff – Basit