Main Content

array2timetable

同種配列の timetable への変換

説明

TT = array2timetable(X,'RowTimes',rowTimes) は、XrowTimes を timetable に変換します。XMN 列の配列で、rowTimes は datetime 値または duration 値の M1 列のベクトルです。X の各列は TT の 1 つの変数になります。rowTimes の時間値が timetable の行にラベル付けされます。TTMN 列の timetable です。

timetable の作成および使用の詳細については、timetableを参照してください。

TT = array2timetable(X,'SampleRate',Fs) は、サンプル レート Fs を使用して等間隔の行時間を計算します。Fs は 1 秒あたりのサンプル数 (Hz) を指定する正の数値スカラーです。最初の行時間はゼロ秒です。

TT = array2timetable(X,'TimeStep',dt) はタイム ステップ dt を使用して等間隔の行時間を計算します。dt は連続する行時間の間の時間の長さを指定する期間またはカレンダー期間の値です。最初の行時間はゼロ秒です。

TT = array2timetable(___,'StartTime',t0) は最初の行時間としてゼロ秒ではなく開始時間 t0 を指定します。この構文は、前述の 2 つの構文にある名前と値のペアの引数 'SampleRate' または 'TimeStep' のいずれかを使用して規則的な timetable を作成する場合に使用できます。

T = array2timetable(X,Name,Value) は、1 つ以上の Name,Value ペアの引数で指定された追加のオプションを使用して、配列 X から timetable を作成します。

たとえば、timetable に含める変数名を指定できます。

すべて折りたたむ

配列を timetable に変換します。期間のベクトルを行時間として追加します。

X = rand(5,3);
Time = seconds(1:5);
TT = array2timetable(X,'RowTimes',Time)
TT=5×3 timetable
    Time       X1         X2         X3   
    _____    _______    _______    _______

    1 sec    0.81472    0.09754    0.15761
    2 sec    0.90579     0.2785    0.97059
    3 sec    0.12699    0.54688    0.95717
    4 sec    0.91338    0.95751    0.48538
    5 sec    0.63236    0.96489    0.80028

timetable のサイズを返します。TT には 5 行と 3 つの変数が含まれます。行時間のセットが 1 つのテーブル プロパティです。行時間は、テーブル変数に含まれません。

size(TT)
ans = 1×2

     5     3

サンプル レート 500 Hz を指定し、配列を timetable に変換します。

X = rand(5,3);
TT = array2timetable(X,'SampleRate',500)
TT=5×3 timetable
      Time         X1         X2         X3   
    _________    _______    _______    _______

    0 sec        0.81472    0.09754    0.15761
    0.002 sec    0.90579     0.2785    0.97059
    0.004 sec    0.12699    0.54688    0.95717
    0.006 sec    0.91338    0.95751    0.48538
    0.008 sec    0.63236    0.96489    0.80028

0.5 秒のタイム ステップを指定し、配列を timetable に変換します。

X = rand(5,3);
TT = array2timetable(X,'TimeStep',seconds(0.5))
TT=5×3 timetable
     Time        X1         X2         X3   
    _______    _______    _______    _______

    0 sec      0.81472    0.09754    0.15761
    0.5 sec    0.90579     0.2785    0.97059
    1 sec      0.12699    0.54688    0.95717
    1.5 sec    0.91338    0.95751    0.48538
    2 sec      0.63236    0.96489    0.80028

タイム ステップ 15 秒と開始時間 5 分を指定します。

X = rand(5,3);
TT = array2timetable(X,'TimeStep',seconds(15),'StartTime',minutes(5))
TT=5×3 timetable
      Time        X1         X2         X3   
    ________    _______    _______    _______

    5 min       0.81472    0.09754    0.15761
    5.25 min    0.90579     0.2785    0.97059
    5.5 min     0.12699    0.54688    0.95717
    5.75 min    0.91338    0.95751    0.48538
    6 min       0.63236    0.96489    0.80028

配列を timetable に変換します。行時間を datetime ベクトルとして指定します。timetable の変数名を指定します。

X = randi([70 90],5,3);
Time = datetime(2016,7,1:5);
varNames = {'Temp1','Temp2','Temp3'};
TT = array2timetable(X,'RowTimes',Time,'VariableNames',varNames)
TT=5×3 timetable
       Time        Temp1    Temp2    Temp3
    ___________    _____    _____    _____

    01-Jul-2016     87       72       73  
    02-Jul-2016     89       75       90  
    03-Jul-2016     72       81       90  
    04-Jul-2016     89       90       80  
    05-Jul-2016     83       90       86  

入力引数

すべて折りたたむ

入力行列。

データ型: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char | string | categorical | datetime | duration | calendarDuration
複素数のサポート: あり

timetable の行に関連付けられた時間。datetime ベクトルまたは duration ベクトルとして指定します。各時間は、出力 timetable の行にラベルを付けます。rowTimes の時間値は、一意であったり、並べ替えられていたり、規則的な値である必要はありません。

サンプル レート。正の数値スカラーとして指定します。Fs は 1 秒あたりのサンプル数 (Hz) を指定します。

タイム ステップ。datetime スカラーまたは duration スカラーとして指定します。

データ型: datetime | duration | calendarDuration

開始時間。datetime スカラーまたは duration スカラーとして指定します。

  • t0 が datetime 値である場合、TT の行時間は datetime 値です。

  • t0 が duration である場合、行時間は duration です。

タイム ステップ dt がカレンダー期間の値である場合、t0 は datetime 値でなければなりません。

データ型: datetime | duration

名前と値の引数

引数のオプションのペアを Name1=Value1,...,NameN=ValueN として指定します。ここで Name は引数名で、Value は対応する値です。名前と値の引数は他の引数の後になければなりませんが、ペアの順序は重要ではありません。

R2021a より前では、コンマを使用してそれぞれの名前と値を区切り、Name を引用符で囲みます。

例: TT = array2timetable(X,'RowTimes',Time,'VariableNames',{'Latitude','Longitude'}) は、入力配列 X から Time で指定された行時間で timetable を作成し、対応する timetable 変数の名前を Latitude および Longitude に設定します。

T の変数名。'VariableNames' と、文字ベクトルの cell 配列、または string 配列 (それらの要素は空ではなく一意) で構成されるコンマ区切りのペアとして指定します。名前の数は変数の数 size(A,2) と等しくなければなりません。

変数名には、スペースや非 ASCII 文字を含め、どんな Unicode® 文字でも使用することができます。

"R2021a 以降"

次元名。要素が空ではない一意の文字ベクトルの 2 要素 cell 配列または 2 要素 string 配列として指定します。

次元名には、スペース、非 ASCII 文字を含む任意の Unicode 文字を使用できます。

R2021a より前は、出力の DimensionNames プロパティの設定によってのみ、次元名を指定できます。

出力引数

すべて折りたたむ

出力 timetable。timetable には、説明、変数の単位、変数名、行時間などのメタデータを保存できます。詳細については、timetable のプロパティの節を参照してください。

ヒント

  • 場合によっては、行時間の間の一定のタイム ステップを指定する構文を使用して array2timetable を呼び出すこともできますが、それでも array2timetable は不規則な timetable を返します。タイム ステップをカレンダーの時間単位を使用して指定し、不規則なステップを発生させる行時間が存在する場合に、このような結果が発生します。たとえば、2019 年 1 月 31 日から始まり、タイム ステップが 1 カレンダー月の timetable を作成した場合、月に関して不規則になります。

    stime = datetime(2019,1,31);
    tstep = calmonths(1);
    X = [1:3]';
    TT = array2timetable(X,'TimeStep',tstep,'StartTime',stime)
    
    TT =
    
      3×1 timetable
    
           Time        X
        ___________    _
    
        31-Jan-2019    1
        28-Feb-2019    2
        31-Mar-2019    3
    

    夏時間 (DST) からの移行、またはうるう秒である datetime 値が原因で不規則性が発生する場合もあります。次の表は、予期しない不規則な結果が発生する可能性がある日付、時刻、およびタイム ステップを示しています。

    行時間値

    タイム ステップ

    月の 29 日、30 日または 31 日として指定する開始時間。

    カレンダー月または四半期の数。

    2 月 29 日として指定する開始時間。

    カレンダー年の数。

    DST から標準時間に移行する日の午前 1 時と午前 2 時の間に発生するすべての datetime 値 (それらの値のタイム ゾーンで DST が適用される場合)。カレンダー日またはカレンダー月の数。

    うるう秒であるすべての datetime 値 (それらの値のタイム ゾーンが UTCLeapSeconds タイム ゾーンである場合)。うるう秒のリストについては、leapseconds を参照してください。

    任意のカレンダー単位 (日、週、月、四半期、年) で指定されているタイム ステップ。

拡張機能

スレッドベースの環境
MATLAB® の backgroundPool を使用してバックグラウンドでコードを実行するか、Parallel Computing Toolbox™ の ThreadPool を使用してコードを高速化します。

バージョン履歴

R2016b で導入

すべて展開する