how deal with date?
显示 更早的评论
hi, i have data with date as: ex.2005-09-06 are there func. convert this date into another form.
my work require to compare dates to know which event happen before , then I can arranged chronologically .
if is not , can i compare this date 2005-09-06 with another date to know which date earlier. or may there func. can arranged these dates. thanks
3 个评论
huda nawaf
2011-11-3
Fangjun Jiang
2011-11-3
The input needs to be data vector or STRING!
Fangjun Jiang
2011-11-3
It's so funny. 2005-09-06 is treated as subtraction thus the result is 1990. You could also do datenum(2005,9,6) where the input arguments are date vector. See datevec().
回答(3 个)
Daniel Baboiu
2011-11-3
1 个投票
See the documentation on date conversion functions below: http://www.mathworks.com/help/techdoc/matlab_prog/bspgcx2-1.html#bspgcx3-43
If you have the string in numeric format only (as in your example), in the order yyyy-mm-dd, then you can compare strings directly to get date order.
If you want to convert it to another format, then you must remember to specify the fields, if you use numeric-only notation (your example could be yyyy-mm-dd or yyyy-dd-mm)
1 个评论
Jan
2011-11-3
You cannot compare two dates in the string format yyyy-mm-dd directly, but you can use SORT to sort them, because then the chronological order equals the alphabetical order.
Fangjun Jiang
2011-11-3
You can convert the date string to numeric and then compare.
a=datenum('2005-09-06');
b=datenum('2005-09-05');
a>b
Bjorn Gustavsson
2011-11-3
0 个投票
Yup, there is. First you have datestr, datevec and datenum. Those should handle most if not all of this task.
HTH,
类别
在 帮助中心 和 File Exchange 中查找有关 Dates and Time 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!