Convert seconds to HH:MM:SS.FF

57 次查看(过去 30 天)
I have time stamps that have hh:mm:ss and nanoseconds in different columns and want to convert them to hh:mm:ss.ff.
I did as following but have no idea what to do next.
Any ideas on how can I do this?
Thanks.
clear
load sample.mat
sample.SECONDS = datenum(sample.TIME)+sample.NANOSECONDS*10^(-9);

采纳的回答

Walter Roberson
Walter Roberson 2021-8-27
sample.SECONDS = datenum(sample.TIME) + seconds(sample.NANOSECONDS*10^(-9));
sample.SECONDS.Format = 'hh:mm:ss.ff';
The second step will be rejected because datetime() objects have no 'ff' format specification. (And be careful, since for datetime() object, 'hh' is hour in 12 hour notation)
Perhaps you want to use datenum objects. However, datenum objects do not have a 'ff' specification either: they have a 'FF' specification.
I recommend
sample.SECONDS.Format = 'HH:mm:ss.SS';
  3 个评论
Walter Roberson
Walter Roberson 2021-8-27
sample.SECONDS = sample.TIME + seconds(sample.NANOSECONDS*10^(-9));
sample.SECONDS.Format = 'HH:mm:ss.SS';
Yu
Yu 2021-8-27
This worked well!
Thank you so much! I really appreciate your help.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Time Series Objects 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by