convert array string data in array serial number
显示 更早的评论
this example clarify my problem
>> size(B)
ans =
463628 1
>> B(1)
ans =
"01/01/2008"
>> datenum(B(1,:),'dd/mm/yyyy')
ans =
733408
>> datenum(B,'dd/mm/yyyy')
Error using datenum
DATENUM failed.
Caused by:
Error using dtstr2dtnummx
Failed to convert from text to date number.
i can convert the single string but not the array of strings
6 个评论
shamal
2023-5-23
"What do you recommend if I have empty array elements?"
Use DATETIME instead of deprecated DATENUM:
B = ["01/01/2008";""]
D = datetime(B, "InputFormat","dd/MM/yyyy")
shamal
2023-5-23
回答(1 个)
Unless you're using an older release where it is not available I strongly recommend you use datetime instead of serial date numbers. Note I've changed your B slightly to make it clear that datetime is importing it correctly, not confusing the day and month information.
B = "02/03/2008";
dt = datetime(B, "InputFormat", "dd/MM/yyyy")
With a datetime array a lot of operations are easier and easier to interpret than with a list of date numbers. As an example, what's the day after dt?
nextDay = dt + days(1)
类别
在 帮助中心 和 File Exchange 中查找有关 Dates and Time 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
