【发布时间】:2014-01-14 23:24:06
【问题描述】:
我想将单元格中的一列日期从 mm/dd/yyyy 格式(它们的格式为 2007 年 4 月 10 日或两位数月份,2007 年 10 月 10 日)转换为 yyyy-mm -dd,并绘制它。所以我需要把 mm/dd/yyyy 变成序列号。
当日期列已经是 yyyy-mm-dd 格式时,以下代码有效:
DateString = PM25data(:,11); % Pull out dates
formatIn = 'yyyy-mm-dd';
x1 = datenum(DateString,formatIn); % Convert to datnum
但是,由于这里的日期格式是 mm/dd/yyyy(例如 2007 年 4 月 12 日),我无法使用上述格式来处理错误
DATENUM failed.
Caused by:
Error using dtstr2dtnummx
Failed on converting date string to
date number.
我也试过这个代码:
DateString = PM25data(2:end,1);
formatOut = 'yyyy-mm-dd';
x4 = datenum(DateString, formatOut); % Convert to datnum
但它运行这个错误:
Cannot convert input into specified date
string.
DATENUM failed.
在这种情况下如何让 datenum 工作?
【问题讨论】:
-
你试过了吗:
datenum(DateString, 'mm/dd/yyyy') -
哦,那行得通。谢谢。我很确定我尝试将 formatIn 设置为 'mm/dd/yyyy' 但没有成功,但我想我在尝试时做错了。
标签: matlab datetime date-format