merge two datetime arrays into one datetime arrays
31 次查看(过去 30 天)
显示 更早的评论
Time =
15×1 datetime array
19:20:03
19:20:13
19:20:23
19:20:33
19:20:43
19:20:53
19:21:02
19:21:12
19:21:22
19:21:32
19:21:42
19:21:52
19:22:02
19:22:12
19:22:22
date =
15×1 datetime array
2022-02-01
2022-02-01
2022-02-01
2022-02-01
2022-02-01
2022-02-01
2022-02-01
2022-02-01
2022-02-01
2022-02-01
2022-02-01
2022-02-01
2022-02-01
2022-02-01
2022-02-01
dt =
15×1 datetime array
2022-02-01 19:20:03
2022-02-01 19:20:13
2022-02-01 19:20:23
2022-02-01 19:20:33
2022-02-01 19:20:43
2022-02-01 19:20:53
2022-02-01 19:21:02
2022-02-01 19:21:12
2022-02-01 19:21:22
2022-02-01 19:21:32
2022-02-01 19:21:42
2022-02-01 19:21:52
2022-02-01 19:22:02
2022-02-01 19:22:12
2022-02-01 19:22:22
I want to make "dt" with "TIme", "date".
0 个评论
采纳的回答
Cris LaPierre
2022-2-22
编辑:Cris LaPierre
2022-2-22
Before you merge, you need to know that all datetime arrays have a date and time associated with them, even if that information is not displayed due to the formatting applied.
d = datetime('today')
d.Format = 'HH:mm:ss'
The point, then, is to first check your format to make sure the information is not already there. If there truly is no date information associated with the time data, then it is best to import this data as a duration instead of a datetime.
As a duration, you could then just add the date and time together.
a = datetime('today')
t = duration(19,20,3)
dt = a+t
However, if your time is a datetime, you must extract just the time of day before adding it to your date.
f = datetime('today')
g = datetime('now','Format','HH:mm:ss')
Y = f+timeofday(g)
更多回答(1 个)
HWIK
2022-2-22
There might be something more efficient but this should work:
dt = datetime(strcat(string(date')," ",string(time')))
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Dates and Time 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!