Specific timestamp to date format using datetime
22 次查看(过去 30 天)
显示 更早的评论
I have data with a certain timestamp, being yyyymmddHHMM and I want to convert this to time format in matlab:
For example:
Given a timestamp of 201502171000 I want to get 2015-02-17 10:00.
PS: I have to manage a lot of data for a given time unit and my aim is to identify my measurements for that certain time unit. And thats why I thought that time format could be helpful.
0 个评论
采纳的回答
Star Strider
2017-3-27
This works:
T = 201502171000;
str = num2str(T, '%11d');
dn = datenum(str, 'yyyymmddHHMM');
ds = datestr(dn, 'yyyy-mm-dd HH:MM') % ‘Legacy’ Functions
dt = datetime(str, 'InputFormat','yyyyMMddHHmm', 'Format','yyyy-MM-dd HH:mm') % ‘datetime’ Function
I do not know if you are starting with an integer or string, so I included the conversion from integer to string, necessary for the datetime function.
2 个评论
Star Strider
2017-3-28
My pleasure.
I am not certain what you want to do.
If you want to put your datetime object and your data together, I would use the table function, since it is designed for that. Another option is a cell array.
更多回答(1 个)
Peter Perkins
2017-3-27
Assuming you have strings, not numbers, you've kind of answered the question yourself, except for m vs. M:
>> datetime('201502171000','InputFormat','yyyyMMddHHmm')
ans =
datetime
17-Feb-2015 10:00:00
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Data Type Conversion 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!