7 日期和时间
MATLAB在2014b版本中将日期和时间独立成了一个数据类型,新的版本中对于时间数据的处理功能更为强大。比如datetime和duration等函数,可以支持对时间的高效计算、对比、格式化显示。对这类数组的操作方法和对普通数组的操作是基本一致的。下面我们就对主要的功能进行介绍。
7.1 创建日期和时间数组
存储日期和时间信息的最主要形式就是datatime数组,它支持代数运算、排序、比较、绘图和格式化显示。代数运算的结果通过duration数组返回,如果采用基于日历的函数进行的计算,那么返回的结果将是calendarDuration数组。Matlab提供了以下函数来进行日期及时间类型的计算,请见表3-11 。
表3-11 日期和时间函数
函 数
说 明
函 数
说 明
datetime
基于当前日期创建时间数组,或者将日期字符串或数据转换为时间数组
yyyymmdd
将MATLAB datetime数据类型转化为YYYYMMDD数值格式
years
年数长度
minutes
分钟数长度
days
天数长度
seconds
秒数长度
hours
小时数长度
duration
由数值创建duration数组
calyears
日历年数长度
calweeks
日历星期数长度
calquarters
日历季度数长度
caldays
日历天数长度
calmonths
日历月数长度
calendarDuration
由数值创建日历时间长度数组
下面我们举例来说明如何创建日期和时间数组。
【例3-41】 日期时间数组创建。
例如,如果我们想要来表示这样两个日期:June 28, 2014 at 6 a.m和June 28, 2014 at 7 a.m,那么我们可以将这些数值相应的赋值给datetime函数各元素即可:
>> t = datetime(2014,6,28,6:7,0,0)
t =
28-Jun-2014 06:00:00 28-Jun-2014 07:00:00
如果想要对数组中的某一元素进行修改,那么只需要将新的数值赋值给相应的元素即可:
>> t.Day = 27:28
t =
27-Jun-2014 06:00:00 28-Jun-2014 07:00:00