MATLAB: timetable 配列を使う

時系列データの扱いに向いているデータ型としてtimetable型があります。

timetableはtable型の配列ですが、各行が時間に紐付けられています。

時間のデータはdatetime型かduration型である必要があります。

生成

>> measTime = datetime(['2020-01-05 20:20:05'; '2020-02-02 11:32:56'; '2020-03-14 07:49:01']);
>> Temp = [25.0; 22.0; 32.7];
>> Moist = [32; 27; 45];
>> TT = timetable(measTime, Temp, Moist)

TT =

  3×2 timetable

         measTime             Temp         Moist   
    ___________________    __________    __________

    2020/01/05 20:20:05    2.5000e+01    3.2000e+01
    2020/02/02 11:32:56    2.2000e+01    2.7000e+01
    2020/03/14 07:49:01    3.2700e+01    4.5000e+01

データの追加

いわゆるappendに相当する操作です。

>> TT(datetime('2020-04-23 11:11:01'), :) = {32, 40}

TT =

  4×2 timetable

         measTime             Temp         Moist   
    ___________________    __________    __________

    2020/01/05 20:20:05    2.5000e+01    3.2000e+01
    2020/02/02 11:32:56    2.2000e+01    2.7000e+01
    2020/03/14 07:49:01    3.2700e+01    4.5000e+01
    2020/04/23 11:11:01    3.2000e+01    4.0000e+01