Convert Timestamp into Date Vector
Mostrar comentarios más antiguos
I have a timestamp like "x2017_12_1816:00_00". It is in a format "xyyyy_mm_dd_hh:mm:ss". However, matlab will not allow this to convert to a date vector since it's not in an acceptable format. I've been able to convert it to a date format by using the code below, where structFields is a structure containing the unconverted timestamps. As you might imagine, this method takes a long time. I've tried to accomplish the same effect by first converting the timestamps to a number in the format "yyyymmddhhmmss", but have yet to come up with a more efficient algorithm. Any suggestions?
if true
% code
structEdit1 = cellfun(@(x) replaceBetween(x,13,15,':','Boundaries','exclusive'),structFields,'UniformOutput',false);
structEdit2 = cellfun(@(x) replaceBetween(x,16,18,':','Boundaries','exclusive'),structEdit1,'UniformOutput',false);
structEdit3 = cellfun(@(x) strrep(x(),'_','-'),structEdit2,'UniformOutput',false);
structEdit4 = cellfun(@(x) insertAfter(x,11,' '),structEdit3,'UniformOutput',false);
structEdit5 = cellfun(@(x) erase(x,'x'),structEdit4,'UniformOutput',false);
end
Respuesta aceptada
Más respuestas (0)
Categorías
Más información sobre Time Series Objects en Centro de ayuda y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!