我想在Matlab中计算长日期时间数组,因此希望预先分配它。不幸的是,当我使用NaT
时,我正在失去时间组件:
>> [datetime(1441411200,'ConvertFrom','posixtime'), datetime(1441411500,'ConvertFrom','posixtime')]
ans =
1×2 datetime array
05-Sep-2015 00:00:00 05-Sep-2015 00:05:00
>> A=NaT(2,1)
A =
2×1 datetime array
NaT
NaT
>> A(1)=datetime(1441411200,'ConvertFrom','posixtime'); A(2)=datetime(1441411500,'ConvertFrom','posixtime');
>> A
A =
2×1 datetime array
05-Sep-2015
05-Sep-2015
如何完成?
Matlab版本为2016b
答案 0 :(得分:4)
这里唯一的问题是Format
创建的数组的NaT
属性 - 它获得了不同的默认值。所以,你可以这样做:
A = NaT(2, 1);
A.Format = 'dd-MMM-uuuu HH:mm:ss';
A(1) = datetime()
导致
A =
2×1 datetime array
30-Apr-2018 10:34:47
NaT