Main Content

이 번역 페이지는 최신 내용을 담고 있지 않습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.

duration

고정 길이 단위의 시간

설명

duration형 배열에 있는 값은 시, 분, 초와 같은 고정 길이 단위로 경과 시간을 나타냅니다. 경과 시간을 고정 길이(24시간) 일 및 고정 길이(365.2425일) 년 단위로 생성할 수도 있습니다.

숫자형 배열을 사용할 때처럼 duration형 배열을 사용하십시오. duration형 배열에 대해 더하기, 빼기, 정렬, 비교, 결합 및 플로팅 연산을 수행할 수 있습니다. duration형 배열을 사용하면 시, 분과 같은 시간 단위를 포함하는 datetime형 배열의 계산을 간편하게 할 수 있습니다.

The datetime data type represents points in time, while the duration and calendarDuration data types represent elapsed time using fixed-length and calendar time units, respectively.

생성

years, days, hours, minutes, seconds, milliseconds 함수를 사용하여 시간 단위를 지정한 duration형 배열을 만들 수 있습니다. 예를 들어, 경과 시간이 1시간, 2시간, 3시간으로 구성된 배열을 만들려면 hours 함수를 사용하십시오.

D = hours(1:3)
D = 

  1×3 duration array

   1 hr   2 hr   3 hr

또한 아래에 설명된 대로, duration 함수를 사용하여 duration형 배열을 만들 수도 있습니다.

설명

D = duration(H,MI,S)H, MI, S로 지정된 시, 분, 초의 숫자 값을 갖는 숫자형 배열에서 duration형 배열을 만듭니다.

예제

D = duration(H,MI,S,MS)는 duration형 배열에 MS로 지정된 밀리초를 추가합니다.

D = duration(X)는 숫자형 행렬에서 기간으로 구성된 열 벡터를 만듭니다.

예제

D = duration(TimeStrings)는 경과 시간을 duration형 배열로 나타내는 텍스트를 변환합니다. TimeStrings'hh:mm:ss' 또는 'dd:hh:mm:ss' 형식 중 하나를 사용하여 시간을 나타내야 합니다.

예제

D = duration(TimeStrings,'InputFormat',infmt)infmt로 지정된 형식을 사용하여 텍스트를 변환합니다.

예제

D = duration(___,'Format',displayFormat)D에 대한 표시 형식을 추가로 지정합니다. 이 속성은 D의 표시를 변경하지만 인수의 값은 변경하지 않습니다. 이 구문은 위에 열거된 구문에서 사용된 모든 인수와 함께 사용할 수 있습니다.

예제

입력 인수

모두 확장

시, 분, 초 배열로, 숫자형 배열로 지정됩니다. 이러한 배열은 스칼라일 수 있습니다. 스칼라가 아닌 모든 배열은 동일한 크기여야 합니다.

예: duration(12,45,7)은 12시간, 45분, 7초로 구성된 duration형을 반환합니다.

밀리초 배열로, 숫자형 배열로 지정됩니다. MS는 스칼라이거나 H, MI, S 입력 인수와 동일한 크기여야 합니다.

예: duration(12,45,30,35)는 12시간, 45분, 30초, 35밀리초로 구성된 duration형을 반환합니다.

입력 행렬로, 숫자형 행렬로 지정됩니다. X에는 시, 분, 초 수를 각각 포함하는 세 개의 열이 있어야 합니다.

예: duration([12 30 16])은 12시간, 30분, 16초로 구성된 duration형을 반환합니다.

경과 시간을 나타내는 텍스트로, 문자형 벡터, 문자형 벡터로 구성된 셀형 배열 또는 string형 배열로 지정됩니다. duration 함수는 TimeStrings의 형식을 'hh:mm:ss' 또는 'dd:hh:mm:ss' 형식 중 하나로 일치시키려고 시도합니다. 여기서 dd, hh, mm, ss는 일, 시, 분, 초를 나타냅니다. 마지막 필드는 소수점 오른쪽에 소수 초(Fractional Second)를 나타내는 숫자를 포함할 수 있습니다.

형식을 알고 있으면 'InputFormat'과 그 대응값 infmt를 지정하십시오.

예: duration('12:30:16')은 12시간, 30분, 16초로 구성된 duration형을 반환합니다.

예: duration('00:05:23.86')은 5분, 23.86초로 구성된 duration형을 반환합니다.

예: duration({'01:34:21';'23:16:54'})는 두 가지 duration형이 포함된 열 벡터를 반환합니다.

입력 텍스트의 형식으로, 문자형 벡터 또는 string형 스칼라로 지정됩니다.

infmt를 다음 형식 중 하나로 지정합니다. 여기서 dd, hh, mm, ss는 일, 시, 분, 초를 나타냅니다.

  • 'dd:hh:mm:ss'

  • 'hh:mm:ss'

  • 'mm:ss'

  • 'hh:mm'

  • 처음 세 형식 중 하나와, 소수 초(Fractional Second) 자릿수를 나타내는 최대 9개의 S 문자를 함께 사용(예: 'hh:mm:ss.SSSS')

속성

모두 확장

표시 형식으로, 문자형 벡터 또는 string형 스칼라로 지정됩니다. 형식은 시간 단위를 포함한 단일 숫자(예: 연 수를 나타내는 'y') 또는 디지털 타이머(예: 시, 분, 초를 나타내는 'hh:mm:ss')로 지정될 수 있습니다.

시간 단위를 포함한 숫자의 경우, 다음 인수 중 하나를 지정하십시오.

  • 'y' — 고정 길이 연 수. 1년은 365.2425일입니다.

  • 'd' — 고정 길이 일 수. 1일은 24시간입니다.

  • 'h' — 시간

  • 'm' — 분

  • 's' — 초

디지털 타이머 형식의 경우, 다음 인수 중 하나를 지정하십시오.

  • 'dd:hh:mm:ss'

  • 'hh:mm:ss'

  • 'mm:ss'

  • 'hh:mm'

  • 처음 세 형식 중 하나와, 소수 초(Fractional Second) 자릿수를 나타내는 최대 9개의 S 문자를 함께 사용(예: 'hh:mm:ss.SSSS')

예: D.Format = 'm'에서는 D의 각 값을 분 수로 표시합니다.

예제

모두 축소

datetime형 값을 생성합니다.

D = datetime('today')
D = datetime
   25-Jan-2024

배열 내 각 값의 날짜가 같지만 시간 성분이 다른 datetime형 배열을 생성합니다. 이러한 배열을 생성하는 한 가지 편리한 방법은 D에 duration형 배열을 추가하는 것입니다.

먼저, hours 함수를 사용하여 시간으로 구성된 배열을 생성합니다. 각 요소는 이전 요소보다 2시간 깁니다.

H = hours(0:2:6)
H = 1x4 duration
   0 hr   2 hr   4 hr   6 hr

그런 다음, DH를 추가합니다.

T = D + H
T = 1x4 datetime
   25-Jan-2024 00:00:00   25-Jan-2024 02:00:00   25-Jan-2024 04:00:00   25-Jan-2024 06:00:00

datetime형 배열에 고정 시간을 사용한 산술 연산을 하려면 duration형 배열을 사용하십시오.

시, 분, 초를 입력 인수로 지정하여 duration형 배열을 생성합니다. 두 번째 인수는 배열이므로, 출력 D는 크기가 같은 배열입니다.

D = duration(1,30:33,0)
D = 1x4 duration
   01:30:00   01:31:00   01:32:00   01:33:00

3개의 열로 숫자형 행렬을 만듭니다. 각 열은 시, 분, 초를 나타냅니다.

X = [12 17 54;9 32 3]
X = 2×3

    12    17    54
     9    32     3

행렬을 duration형 배열로 변환합니다.

D = duration(X)
D = 2x1 duration
   12:17:54
   09:32:03

시간을 나타내는 문자형 벡터를 시, 분, 초로 변환합니다.

T = '6:34:12';
D = duration(T)
D = duration
   06:34:12

문자형 벡터로 구성된 셀형 배열을 변환합니다.

T = {'12:54:37','8:03:12'};
D = duration(T)
D = 1x2 duration
   12:54:37   08:03:12

일 성분이 포함된 텍스트도 변환합니다. 표시할 때는 duration형 배열의 디폴트 형식에 따라 일수가 시간으로 변환되어 표시됩니다.

T = '1:00:54:21';
D = duration(T)
D = duration
   24:54:21

경과 시간을 나타내는 텍스트의 형식을 지정한 다음, 이를 duration형 배열로 변환합니다.

문자형 벡터를 변환합니다. 입력 형식은 분과 초를 나타냅니다. 출력 인수는 시, 분, 초를 나타내는 형식의 duration형 값입니다.

T = '78:34';
infmt = 'mm:ss';
D = duration(T,'InputFormat',infmt)
D = duration
   01:18:34

분, 초, 소수 단위의 초를 소수점 세 자리로 나타내는 형식의 문자형 벡터로 구성된 셀형 배열을 만듭니다.

infmt = 'mm:ss.SSS';
T = {'1:34.862' '67:07.218'}
T = 1x2 cell
    {'1:34.862'}    {'67:07.218'}

T를 duration형 배열로 변환합니다. duration형 배열의 형식을 시, 분, 초, 소수 단위의 초로 나타내도록 지정합니다.

outfmt = 'hh:mm:ss.SSS';
D = duration(T,'InputFormat',infmt,'Format',outfmt)
D = 1x2 duration
   00:01:34.862   01:07:07.218

행렬에서 duration형 배열을 생성합니다. 세 개의 열은 각각 시, 분, 초를 지정합니다. 분과 초를 나타내는 디지털 타이머 형식으로 값을 표시합니다.

X = [2 3 16;1 5 59;1 45 0]
X = 3×3

     2     3    16
     1     5    59
     1    45     0

D = duration(X,'Format','mm:ss')
D = 3x1 duration
   123:16
    65:59
   105:00

  • duration형 배열을 받거나 반환하는 함수에 대한 자세한 내용은 날짜/시간(Date and Time) 항목을 참조하십시오.

확장 기능

스레드 기반 환경
MATLAB®의 backgroundPool을 사용해 백그라운드에서 코드를 실행하거나 Parallel Computing Toolbox™의 ThreadPool을 사용해 코드 실행 속도를 높일 수 있습니다.

버전 내역

R2014b에 개발됨