이 페이지의 최신 내용은 아직 번역되지 않았습니다. 최신 내용은 영문으로 볼 수 있습니다.

array2timetable

동종 배열(Homogeneous Array)을 타임테이블로 변환

설명

예제

TT = array2timetable(X,'RowTimes',rowTimes)XrowTimes를 타임테이블로 변환합니다. XMxN 배열이고 rowTimes는 datetime형 값이나 duration형 값으로 구성된 Mx1 벡터입니다. X의 각 열은 TT의 변수가 됩니다. rowTimes의 시간 값이 타임테이블의 행 레이블로 지정됩니다. TTMxN 타임테이블입니다.

타임테이블을 만들고 사용하는 방법에 대한 자세한 내용은 타임테이블 항목을 참조하십시오.

예제

TT = array2timetable(X,'SampleRate',Fs)는 샘플 레이트 Fs를 사용하여 규칙적인 간격의 행 시간값을 계산합니다. Fs는 초당 샘플 수(Hz)를 지정하는 양의 숫자형 스칼라입니다. 첫 번째 행 시간값은 0초입니다.

예제

TT = array2timetable(X,'TimeStep',dt)는 시간 스텝 dt를 사용하여 규칙적인 간격의 행 시간값을 계산합니다. dt는 연속된 행 시간값 사이의 시간 길이를 지정하는 duration형 값 또는 calendarDuration형 값입니다. 첫 번째 행 시간값은 0초입니다.

예제

TT = array2timetable(___,'StartTime',t0)은 0초 대신 시작 시간 t0을 첫 번째 행 시간값으로 지정합니다. 위에 열거된 두 구문 중 하나에서 'SampleRate' 또는 'TimeStep' 이름-값 쌍의 인수를 사용하여 규칙적인 타임테이블을 만들 경우, 이 구문을 사용할 수 있습니다.

예제

TT = array2timetable(___,'VariableNames',varNames)는 출력 타임테이블의 변수 이름을 지정합니다. 이 구문은 위에 열거된 구문 중 하나의 입력 인수에 사용할 수 있습니다.

예제

모두 축소

배열을 타임테이블로 변환합니다. duration형의 벡터를 행 시간값으로 추가합니다.

X = rand(5,3);
Time = seconds(1:5);
TT = array2timetable(X,'RowTimes',Time)
TT=5×4 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

타임테이블의 크기를 반환합니다. TT에는 5개 행과 3개의 변수가 있습니다. 행 시간값의 집합은 테이블 속성입니다. 테이블 변수에는 행 시간값이 포함되어 있지 않습니다.

size(TT)
ans = 1×2

     5     3

샘플 레이트를 500Hz로 지정하고, 배열을 timetable형으로 변환합니다.

X = rand(5,3);
TT = array2timetable(X,'SampleRate',500)
TT=5×4 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×4 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×4 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

배열을 타임테이블로 변환합니다. 행 시간값을 datetime형 벡터로 지정합니다. 타임테이블 변수의 이름을 지정합니다.

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×4 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
복소수 지원 여부:

타임테이블의 행과 연관된 시간값으로, datetime형 벡터 또는 duration형 벡터로 지정됩니다. 각 시간값은 출력 타임테이블의 행에 레이블을 지정합니다. rowTimes의 시간값은 고유하거나 정렬되거나 규칙적이지 않아도 됩니다.

샘플 레이트로, 양의 숫자형 스칼라로 지정됩니다. Fs는 초당 샘플 수(Hz)를 지정합니다.

시간 스텝으로, datetime형 스칼라 또는 duration형 스칼라로 지정됩니다.

데이터형: datetime | duration | calendarDuration

시작 시간으로, datetime형 스칼라 또는 duration형 스칼라로 지정됩니다.

  • t0이 datetime형 값인 경우, TT의 행 시간값은 datetime형 값입니다.

  • t0이 duration형인 경우, 행 시간값은 duration형입니다.

시간 스텝 dt가 calendarDuration형 값인 경우 t0은 datetime형 값이어야 합니다.

데이터형: datetime | duration

출력 타임테이블의 변수 이름으로, 문자형 벡터로 구성된 셀형 배열 또는 string형 배열로 지정됩니다. varNames의 이름 개수는 변수의 개수와 같아야 합니다.

출력 인수

모두 축소

출력 타임테이블입니다. 이 타임테이블에는 설명, 변수 단위, 변수 이름, 행 시간값과 같은 메타데이터가 저장될 수 있습니다. 자세한 내용은 timetable 속성 설명을 참조하십시오.

  • 행 시간값 사이의 규칙적인 시간 스텝을 지정하는 구문을 사용하여 array2timetable을 호출했는데도 array2timetable이 불규칙적인 타임테이블을 반환하는 경우가 있습니다. 이러한 결과는 달력 시간 단위를 사용하여 시간 스텝을 지정할 때 불규칙적인 스텝을 발생시키는 행 시간값이 포함되어 있는 경우에 발생합니다. 예를 들어, 2019년 1월 31일부터 시작하여 달력상의 월수 1개의 시간 스텝으로 타임테이블을 만든 경우 이 타임테이블은 월에 대해 불규칙적입니다.

    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(일광 절약 시간제)의 전환이나 윤초인 행 시간값으로 인해 불규칙성이 발생하는 경우도 있습니다. 다음 표에서는 예기치 않게 불규칙적인 타임테이블을 생성할 수 있는 행 시간값과 시간 스텝을 보여줍니다.

    행 시간값

    시간 스텝

    월의 29일, 30일 또는 31일로 지정된 시작 시간

    달력상의 월수 또는 사분기수

    2월 29일로 지정된 시작 시간

    달력상의 연수

    DST에서 표준 시간으로 전환되는 날 오전 1시와 오전 2시 사이의 모든 행 시간값(행 시간값이 DST가 적용되는 표준 시간대의 datetime형 값으로 지정된 경우)달력상의 일수 또는 월수

    윤초인 모든 행 시간값(행 시간값이 표준 시간대가 UTCLeapSecond 표준 시간대인 datetime형 값으로 지정된 경우)

    임의의 달력 단위(일수, 주수, 월수, 사분기수 또는 연수)로 지정된 시간 스텝

호환성 관련 고려 사항

모두 확장

R2018b부터 권장되지 않음

확장 기능

R2016b에 개발됨