Convert DoY and hour to datetime format
15 次查看(过去 30 天)
显示 更早的评论
I am very new to matlab and I am working with timeseries data. In the attached example, I want to add a new column as Datetime that displays datetime in the format year, month, day, hour, minute (YYYYMMDDHHMM). Your help will be much appreciated. Thanks.
Year DoY Hour Datetime
2013 1 0.5 201301010030
0 个评论
采纳的回答
Abhishek Tiwari
2022-7-1
Hi,
T = readtable('https://www.mathworks.com/matlabcentral/answers/uploaded_files/1053045/example.xlsx');
T.Datetime = datetime(T.Year, 1, T.DoY, floor(T.Hour), rem(T.Hour, 1).*60, 0, 'format', 'yyyyMMddHHmm')
These might be useful:
更多回答(1 个)
Eric Sofen
2022-7-1
The datetime constructor is forgiving about day values that don't fit within a particular month and wrapping them appropriately:
t = readtable("https://www.mathworks.com/matlabcentral/answers/uploaded_files/1053045/example.xlsx")
t.DT = datetime(t.Year,1,t.DoY) + hours(t.Hour)
% Check that it looks reasonable further along...
t(1000:100:end,:)
另请参阅
类别
在 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!