How to omit milliseconds from a table.
1 回表示 (過去 30 日間)
古いコメントを表示
Omitting milliseconds when importing datetime.
Hello everyone, I am very new to matlab and writing scripts so please be patient with me.
I am trying to omit the milliseconds from the time I am importing from a CVS file. I came up with the below code to import cvs files based on a naming prefix into a table, but "DatetimeFormate" only changes the displaying of the values not how it is stored.
Ultimately I want to filter out rows from the table with the same HH:mm:ss and join this table with a second one based on the time column. I tried to filter for unique values, or calculating the mean of the values with the same time, but every entry is kept because of the milliseconds being different, so I am looking for a way to omit them.
fSearch=fullfile('TC*'); % build matching wildcard expression
d_TC = dir(fSearch); % and look for match
opts_TC = detectImportOptions(d_TC.name,"VariableNamingRule","preserve"); %Preserving Column Names
opts_TC = setvaropts(opts_TC,"Time","Type","datetime",DatetimeFormat="HH:mm:ss"); %InputFormat="MM/dd/yyyy HH:mm:ss.SSS"
TC = readtable(d_TC.name,opts_TC);
The Resulting table is 90394x6 with the first column being datetime Values like "'11:52:54" and the following five double values for temperatures from a sensor.
Thank you!
0 件のコメント
採用された回答
Walter Roberson
2023 年 11 月 6 日
TC.Time = dateshift(TC.Time, 'start', 'second');
2 件のコメント
Les Beckham
2023 年 11 月 6 日
TC.Time = datetime(2023, 11, 6, 2, 49, 58.8)
TC.TimeTruncated = dateshift(TC.Time, 'start', 'second')
TC.TimeRounded = dateshift(TC.Time, 'start', 'second', 'nearest')
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Logical についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!