转换从d: h: m: s:女士为几秒钟

20视图(30天)
已看到
已看到 在2023年5月12日
回答: Atsushi上野 2023年5月12日在47
嗨伙计们,我已经得到大量数据数组timetags秒我想改变,但没有知识能够这样做。
我设法提取该字段的数据结构,给了我一个大10000 x1单元阵列的数据看起来就像这样:
%。样本数据
%。
%。
104 d: 11 h: 59 m: 38.934815秒的
104 d: 11 h: 59 m: 38.936032秒的
104 d: 11 h: 59 m: 39.014802秒的
104 d: 11 h: 59 m: 39.016018秒的
%。
%。
从这我希望能够把小时,分钟,秒和毫秒到秒格式能够与这些执行计算,否定的日子。
希望有人可以帮助!
谢谢,
C。

接受的答案

Stephen23
Stephen23 2023年5月12日在十一12
编辑:Stephen23 2023年5月12日11:30
“否定”。
我猜你真正的意思 忽略 的天。
格式长G
C = {104 d: 11 h: 59 m: 38.934815秒的;104 d: 11 h: 59 m: 38.936032秒的;104 d: 11 h: 59 m: 39.014802秒的;104 d: 11 h: 59 m: 39.016018秒的}
C =4×1单元阵列
{104 d: 11 h: 59 m: 38.934815年代}{“104 d: 11 h: 59 m: 38.936032年代}{“104 d: 11 h: 59 m: 39.014802年代}{“104 d: 11 h: 59 m: 39.016018 s '}
方法一:SSCANF和矩阵乘法:
M = sscanf ([C {}):' % fd: % fh: %调频:% f ',4,正)。”;
V = M * [0; 60 * 60; 60; 1)%秒
V = 4×1
1.0 e + 00 * 43178.934815 43178.936032 43179.014802 43179.016018
方法二:分裂,EXTRACTBEFORE STR2DOUBLE,矩阵multplication:
M = str2double (extractBefore(分裂(C,“:”),lettersPattern));
V = M * [0; 60 * 60; 60; 1)%秒
V = 4×1
1.0 e + 00 * 43178.934815 43178.936032 43179.014802 43179.016018
方法三:取代EXTRACTAFTER和持续时间秒:
V =秒(持续时间(extractAfter(替换(C lettersPattern),“:”)))
V = 4×1
1.0 e + 00 * 43178.934815 43178.936032 43179.014802 43179.016018
1评论
已看到
已看到 2023年5月12日12:15
非常感谢!这是exremely有用,给了我很多选择去探索未来!

登录置评。

答案(1)

Atsushi上野
Atsushi上野 2023年5月12日在47
格式%显示毫秒
DateTimeStr = {104 d: 11 h: 59 m: 38.934815秒的,104 d: 11 h: 59 m: 38.936032秒的,104 d: 11 h: 59 m: 39.014802秒的,104 d: 11 h: 59 m: 39.016018秒的};
DateTimeStr = regexprep (DateTimeStr,“\ d + d:”,);%否定的日子
* = datetime (DateTimeStr,“格式”,“HH是什么:mm是:ss.SSSSSS的”)
* =1×4 datetime数组
11 h: 59 m: 38.934815 11 h: 59 m: 38.936032秒11 h: 59 m: 39.014802秒11 h: 59 m: 39.016018 s
scnds =小时(次)。* 3600 +分钟(次)。* 60 +第二个(次);
秒(scnds)%把小时,分钟,秒和毫秒到秒的格式
ans =1×4时间数组
43178.934815秒43179.014802 43178.936032秒秒43179.016018秒

类别

找到更多的在调整和重塑矩阵帮助中心文件交换

标签

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!