Main Content

datetime

특정 시점을 나타내는 배열

설명

datetime 데이터형은 특정 시점(예: 2020년 8월 24일 오전 10시 50분 30초)을 나타냅니다. datetime형 배열은 배열에 저장된 각 시점의 연, 월, 일, 시, 분, 초 성분을 역산 ISO 달력을 사용하여 지정합니다.

datetime형 배열에는 다음과 같은 특징도 있습니다.

  • 출력 표시와 입력 텍스트 구문 분석을 위한 유연한 형식을 제공합니다.

  • 소수 초를 나노초 정밀도로 표현하기 위한 저장공간을 제공합니다.

  • 표준 시간대, 일광 절약 시간제 및 윤초를 고려하기 위한 속성을 제공합니다.

생성

설명

t = datetime은 현재 날짜 및 시간을 스칼라 datetime형 배열로 반환합니다.

예제

t = datetime(relativeDay)relativeDay로 지정된 날짜를 사용합니다. relativeDay 입력값은 'today', 'tomorrow', 'yesterday', 'now' 중 하나가 될 수 있습니다.

t = datetime(DateStrings)는 시점을 나타내는 DateStrings의 텍스트에서 datetime형 값으로 구성된 배열을 만듭니다.

예제

t = datetime(DateStrings,'InputFormat',infmt)infmt로 지정된 형식을 사용하여 DateStrings를 해석합니다. 입력 인수 DateStrings의 모든 값은 형식이 동일해야 합니다.

유사한 형식 사이의 모호성을 방지하려면 'InputFormat'과 그 대응값 infmt를 지정하십시오.

t의 표시 형식을 제어하려면 'Format' 이름-값 쌍 인수를 지정하거나 tFormat 속성을 설정하십시오.

예제

t = datetime(DateVectors)DateVectors의 날짜 벡터에서 datetime형 값의 열 벡터를 만듭니다.

t = datetime(Y,M,D)Y, M, D(연, 월, 일) 배열의 각 요소로부터 datetime형 값으로 구성된 배열을 만듭니다. 어떤 값이든 스칼라일 수 있으며, 배열인 경우 서로 크기가 동일해야 합니다. 입력 인수를 날짜 벡터 [Y M D]로 지정할 수도 있습니다.

t = datetime(Y,M,D,H,MI,S)H, MI, S(시, 분, 초)도 포함한 배열을 만듭니다. 어떤 값이든 스칼라일 수 있으며, 모든 배열의 크기는 동일해야 합니다. 입력 인수를 날짜 벡터 [Y M D H MI S]로 지정할 수도 있습니다.

t = datetime(Y,M,D,H,MI,S,MS)MS(밀리초)도 배열에 추가합니다. 어떤 값이든 스칼라일 수 있으며, 모든 배열의 크기는 동일해야 합니다.

예제

t = datetime(X,'ConvertFrom',dateType)X의 숫자형 값을 datetime형 배열 t로 변환합니다. dateType 인수는 X의 값 유형을 지정합니다.

X에 현지 시간을 나타내는 POSIX® 시간 또는 율리우스 적일이 들어 있는 경우 'TimeZone' 이름-값 쌍 인수를 사용하여 t에 대해 적절한 표준 시간대를 지정합니다. 표준 시간대를 지정하지 않으면 X에 있는 POSIX 시간 또는 율리우스 적일은 현지 시간이 아니라 UTC 시간으로 처리됩니다.

t = datetime(___,Name,Value)는 위에 열거된 구문에 나와 있는 입력 인수 중 하나 외에, 이름-값 쌍의 인수를 하나 이상 사용하여 추가 옵션을 지정합니다. 예를 들어, 'Format' 이름-값 쌍의 인수를 사용하여 t의 표시 형식을 지정할 수 있습니다.

텍스트에서 datetime형 값을 생성할 때 최상의 성능을 구현하려면 'Format'을 지정하거나 'InputFormat'과 그 대응값 infmt를 지정하십시오.

입력 인수

모두 확장

현재 날짜를 기준으로 한 날로, 다음 값 중 하나로 지정됩니다.

relativeDay의 값설명
'yesterday'전날의 날짜, 자정
'today'현재 날짜, 자정
'tomorrow'다음 날의 날짜, 자정
'now'현재 날짜와 시간

날짜/시간을 나타내는 텍스트로, 문자형 배열, 문자형 벡터로 구성된 셀형 배열 또는 string형 배열로 지정됩니다. datetime 함수는 먼저 DateStrings의 형식을 일반적인 형식과 일치시키려고 시도합니다. 형식을 알고 있으면 'InputFormat'과 그 대응값 infmt를 지정하거나 'Format' 이름-값 쌍의 인수를 지정하십시오.

예: '24-Oct-2014 12:45:07'

예: {'15-Oct-2013','20-Nov-2014'}

예: ["11-Nov-2016","12-Dec-2016"]

데이터형: char | cell | string

날짜/시간을 나타내는 입력 텍스트 형식으로, 다음 문자 식별자를 포함하는 문자형 벡터 또는 string형 스칼라로 지정됩니다.

  • infmt가 날짜 지정자를 포함하지 않으면 datetimeDateStrings의 값이 현재 날짜에 속하는 것으로 가정합니다.

  • infmt가 시간 지정자를 포함하지 않으면 datetimeDateStrings의 값이 자정에 해당하는 것으로 가정합니다.

다음 표에는 여러 가지 일반적인 입력 형식이 나와 있으며, 뉴욕 시의 날짜 2014년 4월 19일 토요일 9:41:06.12345 PM에 대해 형식이 지정된 입력값의 예를 포함합니다.

infmt의 값
'yyyy-MM-dd'2014-04-19
'dd/MM/yyyy'19/04/2014
'dd.MM.yyyy'19.04.2014
'yyyy年 MM月 dd日'2014年 04月 19日(일본어 로캘 ja_JP의 문자)
'MMMM d, yyyy'April 19, 2014
'eeee, MMMM d, yyyy h:mm a'Saturday, April 19, 2014 9:41 PM
'MMMM d, yyyy HH:mm:ss Z'April 19, 2014 21:41:06 -0400
'yyyy-MM-dd''T''HH:mmXXX'2014-04-19T21:41-04:00
'yyyy-MM-dd HH:mm:ss.SSS'2014-04-19 21:41:06.123

소수 초(Fractional Second)를 나타내는 입력 텍스트의 경우, infmt에 소수 초 자릿수를 나타내는 S 문자를 최대 9개까지 지정할 수 있습니다. 예를 들어, 'yyyy-MM-dd HH:mm:ss.SSS'는 날짜/시간을 밀리초까지 나타내는 텍스트 형식입니다.

유효한 문자 식별자의 전체 목록을 보려면 datetime형 배열의 Format 속성을 참조하십시오. 대부분의 식별자를 입력 형식과 표시 형식으로 동시에 사용할 수 있습니다. 그러나 MMMMM 또는 모든 e 식별자는 표시 전용이므로, 입력 텍스트를 해석하는 데 사용하지 마십시오.

참고

datetime이 받는 문자 식별자는 datestr 함수, datenum 함수, datevec 함수가 사용하는 식별자와 다릅니다.

데이터형: char | string

날짜 벡터로, m 전체 날짜 벡터 또는 부분 날짜 벡터를 각각 포함하는 m×6 또는 m×3 행렬로 지정됩니다. 전체 날짜 벡터는 연, 월, 일, 시, 분, 초를 순서대로 지정하는 6개 요소를 가집니다. 부분 날짜 벡터는 연, 월, 일을 순서대로 지정하는 3개 요소를 가집니다. DateVector의 각 요소는 양의 정수 값이나 음의 정수 값이어야 합니다(단, 초를 나타내는 요소는 예외적으로 소수일 수 있음). 요소가 정상 범위를 벗어나는 경우 datetime은 날짜 벡터 요소와 이전 요소를 모두 조정합니다. 예를 들어, 분 요소가 70인 경우 datetime은 시간 요소를 1로 조정하고 분 요소를 10으로 설정합니다. 분 요소가 -15인 경우 datetime은 시간 요소를 1 감소시키고 분 요소를 45로 설정합니다.

예: [2014 10 24 12 45 07]

예: [2014 10 24]

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

연, 월, 일 배열로, 숫자형 배열로 지정됩니다. 어떤 값이든 스칼라일 수 있으며, 배열인 경우 서로 크기가 동일해야 합니다. Y,M,D는 정수 값이어야 합니다.

  • Y,M,D가 모두 스칼라이거나 모두 열 벡터인 경우 입력 인수를 날짜 벡터 [Y M D]로 지정할 수 있습니다.

  • Y, M, D 입력값 중 하나의 요소가 정상 범위를 벗어나는 경우 datetime은 해당 요소와 이전 입력값의 동일한 요소를 모두 조정합니다. 자세한 내용은 DateVectors 입력 인수에 대한 설명을 참조하십시오.

예: 2003,10,24

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

연, 월, 일, 시, 분, 초 배열로, 숫자형 배열로 지정됩니다. 어떤 값이든 스칼라일 수 있으며, 배열인 경우 서로 크기가 동일해야 합니다. 소수 초(Fractional Second)를 초 입력 인수 S의 일부로 지정합니다. Y,M,D,H,MI 배열은 정수 값을 포함해야 합니다.

  • Y,M,D,H,MI,S가 모두 스칼라이거나 모두 열 벡터인 경우 입력 인수를 날짜 벡터 [Y M D H MI S]로 지정할 수 있습니다.

  • Y, M, D, H, MI, S 입력값 중 하나의 요소가 정상 범위를 벗어나는 경우 datetime은 해당 요소와 이전 입력값의 동일한 요소를 모두 조정합니다. 자세한 내용은 DateVectors 입력 인수에 대한 설명을 참조하십시오.

예: 2003,10,24,12,45,07.451

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

연, 월, 일, 시, 분, 초, 밀리초 배열로, 숫자형 배열로 지정됩니다. 어떤 값이든 스칼라일 수 있으며, 배열인 경우 서로 크기가 동일해야 합니다. Y,M,D,H,MI,S 배열은 정수 값을 포함해야 합니다. MS는 소수 밀리초를 포함할 수 있습니다.

Y, M, D, H, MI, S, MS 입력값 중 하나의 요소가 정상 범위를 벗어나는 경우 datetime은 해당 요소와 이전 입력값의 동일한 요소를 모두 조정합니다. 자세한 내용은 DateVectors 입력 인수에 대한 설명을 참조하십시오.

예: 2003,10,24,12,45,07,10.52

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

숫자형 값으로, 배열로 지정됩니다.

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

X의 값 유형으로, 다음 값 중 하나로 지정됩니다.

dateType의 값

X의 값 유형

'datenum'

0-Jan-0000(0000년 1월 0일) 이후의 일수(역산 ISO 달력).

'excel'

0-Jan-1900(1900년 1월 0일) 이후의 일수.

Excel®의 날짜 번호 값은 가장 가까운 마이크로초로 반올림됩니다.

참고: Excel은 1900년을 윤년으로 잘못 취급합니다. 따라서 Excel 날짜 번호 값을 계산할 때 1900년 2월 28일과 1900년 3월 1일 사이에 하루 단절이 있습니다.

'excel1904'

0-Jan-1904(1904년 1월 0일) 이후의 일수.

Excel의 날짜 번호 값은 가장 가까운 마이크로초로 반올림됩니다.

참고: Excel은 1900년을 윤년으로 잘못 취급합니다. 따라서 Excel 날짜 번호 값을 계산할 때 1900년 2월 28일과 1900년 3월 1일 사이에 하루 단절이 있습니다.

'juliandate'

UTC 24-Nov-4714 BCE(기원전 4714년 11월 24일) 정오 이후의 일수(역산 그레고리력).

표준 시간대를 지정하지 않고 Xdatetime형 배열로 변환하면 datetime 값이 현지 시간이 아니라 UTC 시간을 나타냅니다. 현지 시간을 나타내려면 'TimeZone' 이름-값 쌍 인수를 사용하여 표준 시간대를 지정하십시오.

예: 뉴욕 표준 시간대를 사용하여 X를 변환합니다.

T = datetime(X,'ConvertFrom','juliandate',...
'TimeZone','America/New_York')

그런 다음 TimeZone에 빈 문자형 벡터를 할당하여 T를 표준 시간대가 지정되지 않은 datetime형 배열로 변환함으로써 현지 시간을 나타낼 수 있습니다.

T.TimeZone = ''

'modifiedjuliandate'

UTC 17-Nov-1858(1858년 11월 17일) 자정 이후의 일수.

표준 시간대를 지정하지 않고 Xdatetime형 배열로 변환하면 datetime 값이 현지 시간이 아니라 UTC 시간을 나타냅니다. 현지 시간을 나타내려면 'TimeZone' 이름-값 쌍 인수를 사용하여 표준 시간대를 지정하십시오.

예: 뉴욕 표준 시간대를 사용하여 X를 변환합니다.

T = datetime(X,'ConvertFrom','modifiedjuliandate',...
'TimeZone','America/New_York')

그런 다음 TimeZone에 빈 문자형 벡터를 할당하여 T를 표준 시간대가 지정되지 않은 datetime형 배열로 변환함으로써 현지 시간을 나타낼 수 있습니다.

T.TimeZone = ''

'posixtime'

1-Jan-1970(1970년 1월 1일) 00:00:00 UTC 이후의 시간(초), 윤초(Leap Second)는 세지 않음.

표준 시간대를 지정하지 않고 Xdatetime형 배열로 변환하면 datetime 값이 현지 시간이 아니라 UTC 시간을 나타냅니다. 현지 시간을 나타내려면 'TimeZone' 이름-값 쌍 인수를 사용하여 표준 시간대를 지정하십시오.

예: 뉴욕 표준 시간대를 사용하여 X를 변환합니다.

T = datetime(X,'ConvertFrom','posixtime',...
'TimeZone','America/New_York')

그런 다음 TimeZone에 빈 문자형 벡터를 할당하여 T를 표준 시간대가 지정되지 않은 datetime형 배열로 변환함으로써 현지 시간을 나타낼 수 있습니다.

T.TimeZone = ''

'yyyymmdd'

YYYYMMDD 숫자형 값 형식의 날짜. 예를 들어, 20140402는 2014년 4월 2일을 나타냅니다.

'ntp'

1-Jan-1900 00:00:00 UTC 이후의 "클록 틱" 수로, 각 클록 틱은 2^-32초입니다.

'.net'

1-Jan-0001 00:00:00 UTC 이후의 "클록 틱" 수 로, 각 클록 틱은 100나노초입니다.

'ntfs'

1-Jan-1601 00:00:00 UTC 이후의 "클록 틱" 수로, 각 클록 틱은 100나노초입니다.

'tt2000'

J2000 이후 경과한 시간(나노초). CDF(Common Data Format)는 CDF_TIME_TT2000(또는 TT2000) 데이터 유형을 CDF 파일 데이터에 대한 윤초를 처리하는 고해상도 시간 유형으로 정의합니다. 자세한 내용은 Requirements for handling leap seconds in CDF 항목을 참조하십시오.

입력 X는 요소가 TT2000 Epoch의 시간을 나타내는 int64 배열이어야 합니다.

TT2000 시간을 변환하려면 "ConvertFrom","tt2000""TimeZone","UTCLeapSeconds" 이름-값 인수를 사용하여 datetime을 호출하십시오. UTCLeapSeconds 표준 시간대는 윤초를 고려하는 유일한 표준 시간대입니다.

참고: J2000은 2000년 1월 1일 12:00 TT(지구시)입니다. TT와 UTC가 다른 것은 두 가지 요인 때문입니다.

  • 윤초

  • TT와 원자 시계 시간 기록 간의 차이는 32.184초입니다

그 결과 J2000은 다음과 같이 실제 UTCLeapSeconds 표준 시간대 정오 64.184초 전에 발생합니다.

D = datetime(2000,1,1,11,58,55,816,"TimeZone","UTCLeapSeconds")
D = 2000-01-01T11:58:55.816Z

예: TT2000 시간을 나타내는 int64 배열을 만듭니다. 이를 datetime형 배열로 변환합니다.

X = int64([702077514184000000; ...
           702163914184000000; ...
           702250314184000000])
X =
  3x1 int64 column vector
   702077514184000000
   702163914184000000
   702250314184000000
D = datetime(X,"ConvertFrom","tt2000","TimeZone","UTCLeapSeconds")
D = 
  3x1 datetime array
   2022-04-01T09:30:45.000Z
   2022-04-02T09:30:45.000Z
   2022-04-03T09:30:45.000Z

'epochtime','Epoch',epochValue

Epoch 이후의 시간(초).

epochValue도 지정해야 합니다. 이 값은 스칼라 datetime형이거나 Epoch 시간을 나타내는 문자형 벡터 또는 string형 스칼라입니다.

예: 2000년 1월 1일 자정을 사용하여 X를 Epoch로 변환합니다.

T = datetime(X,'ConvertFrom',...
'epochtime','Epoch','2000-01-01')

'epochtime','Epoch',epochValue,'TicksPerSecond',n

Epoch 이후의 "클록 틱" 수.

epochValue를 지정하면 n도 지정할 수 있습니다. 이 값은 초당 "클록 틱" 수를 지정하는 정수 스칼라입니다.

예: 2000년 1월 1일 자정을 사용하여 X를 Epoch로 변환합니다. 이 변환은 초당 1000 "클록 틱"이 있다고 지정되므로 X의 값은 2000년 1월 1일 자정 이후의 밀리초로 환산됩니다.

T = datetime(X,'ConvertFrom',...
'epochtime','Epoch','2000-01-01','TicksPerSecond',1000)

이름-값 인수

선택적 인수 쌍을 Name1=Value1,...,NameN=ValueN으로 지정합니다. 여기서 Name은 인수 이름이고 Value는 대응값입니다. 이름-값 인수는 다른 인수 뒤에 와야 하지만, 인수 쌍의 순서는 상관없습니다.

R2021a 이전 릴리스에서는 쉼표를 사용하여 각 이름과 값을 구분하고 Name을 따옴표로 묶으십시오.

예: 'Format','eeee MMMM d, y','TimeZone','local'은 표시 형식을 datetime형 값에 적용하고 현지 표준 시간대를 지정합니다.

출력 배열에 있는 값의 표시 형식으로, 'Format'과 함께 다음 값 중 하나가 쉼표로 구분되어 지정됩니다.

Format의 값설명

'default'

디폴트 표시 형식을 사용합니다.

'preserveinput'

입력 형식 infmt로 지정된 형식을 사용합니다. infmt를 지정하지 않으면 datetime이 자동으로 형식을 지정합니다.

문자형 벡터 또는 string형 스칼라

문자형 벡터 또는 string형 스칼라에 지정한 형식을 사용합니다.

자신의 형식을 지정하려면 유효한 문자 식별자를 사용해야 합니다. 유효한 문자 식별자의 전체 목록을 보려면 Format을 참조하십시오.

공장 초기값 형식은 시스템 로캘에 따라 다릅니다. 디폴트 표시 형식을 변경하려면 datetime형의 디폴트 형식 항목을 참조하십시오.

DateStrings 입력값을 지정한 반면 'InputFormat' 파라미터를 지정하지 않으면 datetimeFormat 값을 사용하여 DateStrings를 해석하려고 합니다.

예: 'Format','eeee, MMMM d, yyyy HH:mm:ss'Wednesday, April 9, 2014 21:41:06과 같이 날짜/시간을 표시합니다.

데이터형: char | string

DateStrings 입력 인수 값의 로캘로, 'Locale'과 함께 문자형 벡터 또는 string형 스칼라가 쉼표로 구분되어 지정됩니다. Locale 값에 따라 datetimeDateStrings를 해석하는 방식이 결정됩니다. 하지만 출력값인 datetime형 값이 표시되는 방식은 이에 따라 결정되지 않습니다.

Locale 값은 다음이 될 수 있습니다.

  • "system". 시스템 로캘을 지정하려는 경우 사용합니다.

  • xx_YY 형식의 string형 스칼라 또는 문자형 벡터. 여기서 xx는 언어를 지정하는 ISO 639-1 두 자리 코드(소문자)이고, YY는 국가를 지정하는 ISO 3166-1 alpha-2 코드(대문자)입니다.

다음 표에는 로캘에 일반적으로 사용되는 일부 값이 나와 있습니다.

로캘 언어국가
"de_DE"독일어독일
"en_GB"영어영국
"en_US"영어미국
"es_ES"스페인어스페인
"fr_FR"프랑스어프랑스
"it_IT"이탈리아어이탈리아
"ja_JP"일본어일본
"ko_KR"한국어한국
"nl_NL"네덜란드어네덜란드
"zh_CN"중국어(간체)중국

'Locale' 이름-값 쌍은 DateStrings 입력 인수를 사용할 때만 사용할 수 있습니다.

예: 'Locale',"de_DE"

참고

Locale 값에 따라 입력 텍스트 값이 해석되는 방식이 결정됩니다. 출력값인 datetime형 값은 항상 기본 설정 창의 날짜/시간 형식 섹션에 있는 로캘 옵션으로 지정된 언어로 표시됩니다.

데이터형: char | string

100년 날짜 범위의 시작 연도로, 두 문자로 된 연도가 여기에 속하게 되며, 'PivotYear'와 함께 정수가 쉼표로 구분되어 지정됩니다. 피벗 연도를 사용하여, 연도를 명시하는 두 문자로 된 날짜를 해석합니다. 즉, 피벗 연도는 infmt 인수가 y 또는 yy를 포함할 경우에만 영향을 미칩니다.

'PivotYear' 이름-값 쌍은 DateStrings 입력 인수를 사용할 때만 사용할 수 있습니다.

예: 'PivotYear',1900

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

표준 시간대로, 'TimeZone'과 함께 표준 시간대를 지정하는 문자형 벡터 또는 string형 스칼라가 쉼표로 구분되어 지정됩니다.

datetime 함수는 'TimeZone'의 값을 사용하여 입력 데이터를 해석하고 출력 배열의 TimeZone 속성을 설정합니다. 입력 데이터가 표준 시간대를 포함하는 문자형 벡터 또는 string형이면 datetime 함수는 모든 값을 지정된 표준 시간대로 변환합니다.

표준 시간대에 대한 자세한 내용과 표준 시간대 목록은 TimeZone 속성을 참조하십시오.

데이터형: char | string

속성

모두 확장

표시 형식으로, 'default', 문자형 벡터 또는 string형 스칼라로 지정됩니다.

Format의 값설명

'default'

디폴트 표시 형식을 사용합니다.

문자형 벡터 또는 string형 스칼라

문자형 벡터 또는 string형 스칼라에 지정한 형식을 사용합니다.

자신만의 고유한 형식을 지정하려면 날짜/시간에 Unicode® LDML(Locale Data Markup Language) 표준에 부합하는 유효한 문자 식별자를 사용해야 합니다. LDML에 대한 자세한 내용은 Unicode Technical Standard #35에서 특히 Date Field Symbol Table을 참조하십시오.

예: 'eeee, MMMM d, yyyy HH:mm:ss'Wednesday, April 9, 2014 21:41:06과 같이 날짜/시간을 표시합니다.

하이픈, 공백, 콜론과 같은 비문자나 비ASCII 문자를 포함시켜 필드를 구분할 수 있습니다. 문자 A-Za-z를 형식에 리터럴 문자로 포함하려면 문자를 작은따옴표로 묶으십시오.

예: 'uuuu-MM-dd''T''HH:mm:ss'2014-04-09T21:41:06과 같이 날짜/시간을 표시합니다.

참고

datetime이 받는 문자 식별자는 datestr 함수, datenum 함수, datevec 함수가 사용하는 식별자와 다릅니다.

공장 초기값 형식은 시스템 로캘에 따라 다릅니다. 디폴트 표시 형식을 변경하려면 datetime형의 디폴트 형식 항목을 참조하십시오.

일반 형식의 예

다음 표에는 일반 표시 형식이 나열되어 있습니다. 아래 예는 뉴욕 시의 날짜 2014년 4월 9일 수요일 9:41:06.12345 PM에 대해 형식이 지정된 출력값을 보여줍니다.

Format의 값
'yyyy-MM-dd'2014-04-09
'dd/MM/yyyy'09/04/2014
'dd.MM.yyyy'09.04.2014
'yyyy年 MM月 dd日'2014年 04月 09日(일본어 로캘 ja_JP의 문자)
'MMMM d, yyyy'April 9, 2014
'eeee, MMMM d, yyyy h:mm a'Wednesday, April 9, 2014 9:41 PM
'MMMM d, yyyy HH:mm:ss Z'April 9, 2014 21:41:06 -400
'yyyy-MM-dd''T''HH:mmXXX'2014-04-09T21:41-04:00
'yyyy-MM-dd HH:mm:ss.SSS'2014-04-09 21:41:06.123

모든 날짜/시간 형식

다음 식별자를 사용하여 날짜/시간 필드의 표시 형식을 지정할 수 있습니다. 표시 형식은 뉴욕 시의 날짜 2014년 4월 9일 수요일 오후 9:41:06.12345에 대한 출력값을 보여줍니다.

문자 식별자설명표시
G연대CE
y연도. 앞에 0 표시 안 됨. 이 표 다음에 나오는 참고 사항을 참조하십시오.2014
yy연도. 마지막 2자리 숫자 사용. 이 표 다음에 나오는 참고 사항을 참조하십시오.14
yyy, yyyy ...연도. 'y'의 개수로 지정된 최소한의 자릿수 사용연도 2014의 경우 'yyy'2014를 표시하는 반면 'yyyyy'02014를 표시합니다.
u, uu, ...ISO 연도. 연도를 지정하는 단일 숫자. ISO 연도 값은 CE 연도로 양의 값을 대입하고 BCE 연도로 음의 값을 대입합니다. 1 BCE는 연도 0이 됩니다.2014
Q사분기. 1자리 숫자 사용2
QQ사분기. 2자리 숫자 사용02
QQQ사분기. 축약형Q2
QQQQ사분기. 전체 이름2nd quarter
M월. 1자리나 2자리 숫자 사용4
MM월. 2자리 숫자 사용04
MMM월. 축약형 이름Apr
MMMM월. 전체 이름April
MMMMM월. 대문자로 머리글자 표시A
W그 달의 몇째 주. 1자리 숫자 사용2
d그 달의 몇째 날. 1자리나 2자리 숫자 사용9
dd그 달의 몇째 날. 2자리 숫자 사용09
D그 해의 몇째 날. 1자리나 2자리, 3자리 숫자 사용99
DD그 해의 몇째 날. 2자리 숫자 사용99
DDD그 해의 몇째 날. 3자리 숫자 사용099
e그 주의 몇째 날. 1자리나 2자리 숫자 사용4. 여기서, 한 주의 첫째 날은 일요일입니다.
ee그 주의 몇째 날. 2자리 숫자 사용04
eee요일. 축약형 이름Wed
eeee요일. 전체 이름Wednesday
eeeee요일. 대문자로 머리글자 표시W
a시간대(오전 또는 오후)PM
h시. 1자리나 2자리 숫자를 사용한 12시간 표기법9
hh시. 2자리 숫자를 사용한 12시간 표기법09
H시. 1자리나 2자리 숫자를 사용한 24시간 표기법21
HH시. 2자리 숫자를 사용한 24시간 표기법21
m분. 1자리나 2자리 숫자 사용41
mm분. 2자리 숫자 사용41
s초. 1자리나 2자리 숫자 사용6
ss초. 2자리 숫자 사용06
S, SS, ..., SSSSSSSSS소수 초(Fractional Second). 'S'의 개수로 지정된 자릿수 사용(최대 9자리)'SSS'의 경우 6.12345초를 6.123으로 자릅니다.

참고

  • 2자리 연도 숫자 값을 읽는 경우 형식을 y 또는 yy로 지정하면 피벗 연도에 따라 연도가 속하는 세기가 결정됩니다.

  • 연중 일자 숫자를 읽을 경우 연중 일자(D) 식별자와 그레고리력 연도(y) 식별자를 모두 포함하는 형식을 지정하면 datetime이 연중 일자 숫자를 올바르게 읽어 들이지 못할 수 있습니다. y 자리에 ISO 연도(u)를 사용하십시오.

  • 0에 가까운 연도 숫자 값으로 작업할 경우 y 문자 대신 하나 이상의 u 문자를 사용하여 연도를 나타낼 수 있습니다.

  • 144683년 CE 이후이거나 140743 BCE 이전인 datetime형 값은 지정된 Format 값에 관계없이 연도 숫자 값만 표시합니다.

표준 시간대 오프셋 형식

다음 식별자를 사용하여 표준 시간대 오프셋의 표시 형식을 지정합니다. 표준 시간대 오프셋은 특정 날짜/시간이 UTC에서 오프셋되는 시간입니다. 표준 시간대는 표준 시간대 오프셋을 결정하는 규칙을 사용하며, 매년 다른 시기에서 오프셋은 다를 수 있습니다. 시간 구성요소가 분명하게 표시되도록 하려면 datetime형 배열의 표시 형식에 표준 시간대 오프셋 식별자를 포함시키십시오.

문자 식별자설명표시
z표준 시간대 오프셋의 축약형 이름. 이 값을 사용할 수 없는 경우 표준 시간대 오프셋은 UTC-4와 같은 짧은 UTC 형식을 사용합니다.EDT
Z시, 분 및 초(선택 사항) 필드를 포함한 ISO 8601 기본 형식.-0400
ZZZZ긴 UTC 형식.UTC-04:00
ZZZZZ시, 분 및 초(선택 사항) 필드를 포함한 ISO 8601 확장 형식. 시간 오프셋 0은 ISO 8601 UTC 표시기 “Z”로 표시됩니다.-04:00
x 또는 X시 필드와 분 필드(선택 사항)를 포함한 ISO 8601 기본 형식. X를 지정하면 시간 오프셋 0은 ISO 8601 UTC 표시기 “Z”로 표시됩니다.-04
xx 또는 XX시 필드와 분 필드를 포함한 ISO 8601 기본 형식. XX를 지정하면 시간 오프셋 0은 ISO 8601 UTC 표시기 “Z”로 표시됩니다.-0400
xxx 또는 XXX시 필드와 분 필드를 포함한 ISO 8601 확장 형식. XXX를 지정하면 시간 오프셋 0은 ISO 8601 UTC 표시기 “Z”로 표시됩니다.-04:00
xxxx 또는 XXXX시, 분 및 초(선택 사항) 필드를 포함한 ISO 8601 기본 형식. XXXX를 지정하면 시간 오프셋 0은 ISO 8601 UTC 표시기 “Z”로 표시됩니다.-0400
xxxxx 또는 XXXXX시, 분 및 초(선택 사항) 필드를 포함한 ISO 8601 확장 형식. XXXXX를 지정하면 시간 오프셋 0은 ISO 8601 UTC 표시기 “Z”로 표시됩니다.-04:00

표준 시간대로, 문자형 벡터 또는 string형 스칼라로 지정됩니다. datetime 배열을 만든 후에 이 속성을 사용하여 표준 시간대를 변경할 수 있습니다.

datetime 데이터형은 표준 시간대를 설정하고 표준 시간대 오프셋을 계산하기 위해 IANA(인터넷 할당 번호 관리 기관)에서 제공하는 IANA Time Zone Database의 코드와 데이터를 사용합니다. 현재 datetime이 사용하는 버전에는 IANA의 최신 업데이트가 포함되어 있습니다. (datetime이 사용하는 버전을 가져오려면 timezones 함수의 두 번째 출력값을 반환하십시오.)

TimeZone의 값은 다음이 될 수 있습니다.

  • ''. 특정 표준 시간대에 속하지 않는, “표준 시간대가 지정되지 않은” datetime형 배열을 만들려는 경우 사용합니다.

  • IANA 표준 시간대 데이터베이스에 제공된 표준 시간대 지역 이름(예: 'America/Los_Angeles'). 표준 시간대 지역의 이름은 지리적 지역에서 준수하는, UTC와의 표준 오프셋 및 일광 절약 시간제 오프셋에 대한 현재 규칙과 이전 규칙을 고려합니다.

  • +HH:mm 또는 -HH:mm 형식의 ISO 8601 문자형 벡터(예: '+01:00'). UTC와의 고정 오프셋인 표준 시간대를 지정하려는 경우 사용합니다.

  • 'UTC'. UTC(협정 세계시)의 datetime형 배열을 만들려는 경우 사용합니다.

  • 'UTCLeapSeconds'. 윤초를 고려하는 UTC(협정 세계시)의 datetime형 배열을 만들려는 경우 사용합니다. datetime 데이터형에서 지원하는 윤초 목록은 leapseconds를 참조하십시오.

  • 'local'. 시스템 표준 시간대의 datetime형 배열을 만들려는 경우 사용합니다. TimeZone 속성을 쿼리하면 IANA 값이 반환됩니다.

다음 표에는 IANA 표준 시간대 데이터베이스에 제공된 표준 시간대 지역의 일반적인 이름이 나와 있습니다.

TimeZone의 값UTC 오프셋UTC DST 오프셋
'Africa/Johannesburg'+02:00+02:00
'America/Chicago'−06:00−05:00
'America/Denver'−07:00−06:00
'America/Los_Angeles'−08:00−07:00
'America/New_York'−05:00−04:00
'America/Sao_Paulo'−03:00−02:00
'Asia/Hong_Kong'+08:00+08:00
'Asia/Kolkata'+05:30+05:30
'Asia/Tokyo'+09:00+09:00
'Australia/Sydney'+10:00+11:00
'Europe/London'+00:00+01:00
'Europe/Zurich'+01:00+02:00

데이터형: char | string

datetime형 배열에 있는 각 값의 연도 숫자 값으로, 크기와 형태가 datetime형 배열과 같은 숫자형 배열로 지정됩니다. 각 연도 숫자 값은 ISO 달력을 기반으로 하는 정수 값입니다. 현재 연대의 연도는 양수이며, 이전 연대의 연도는 0 또는 음수입니다. 예를 들어, 1 BCE에 대한 연도 숫자 값은 0입니다.

윤일(2월 29일)에 해당하는 datetime형 값에 대해 Year 속성을 비윤년으로 설정하면 DayMonth 속성이 3월 1일로 변경됩니다.

datetime형 배열에 있는 각 값의 월 숫자 값으로, 크기와 형태가 datetime형 배열과 같은 숫자형 배열로 지정됩니다. 각 월 숫자 값은 1에서 12까지의 정수 값입니다. 이 범위 밖의 값을 설정하면 Year 속성이 그에 따라 조정되고 Month 속성은 범위 1~12 내에 유지됩니다. 예를 들어, 월 0은 전년도의 12월에 해당합니다. 이전 날짜의 경우, 월 숫자 값은 역산 그레고리력(Proleptic Gregorian Calendar)을 기반으로 합니다.

datetime형 배열에 있는 각 값의 월중 일자 숫자 값으로, 크기와 형태가 datetime형 배열과 같은 숫자형 배열로 지정됩니다. 각각의 월중 일자 숫자 값은 1에서 28, 29, 30, 31 중 하나(연도와 월에 따라 다름)까지의 정수 값입니다. 이 범위 밖의 값을 설정하면 Month 속성과 Year 속성이 그에 따라 조정되고 Day 속성은 적절한 범위 내에 유지됩니다. 예를 들어, 일자 값 0은 이전 달의 마지막 날에 해당합니다. 이전 날짜의 경우, 일 숫자 값은 역산 그레고리력(Proleptic Gregorian Calendar)을 기반으로 합니다.

datetime형 배열에 있는 각 값의 시간 숫자 값으로, 크기와 형태가 datetime형 배열과 같은 숫자형 배열로 지정됩니다. 각 시간 숫자 값은 0에서 23까지의 정수 값입니다. 이 범위 밖의 값을 설정하면 Day, Month, Year 속성이 그에 따라 조정되고 Hour 속성은 적절한 범위 내에 유지됩니다. 예를 들어, 시간 -1은 전날의 시간 23에 해당합니다.

이러한 조건은 일광 절약 시간제를 따르는 특정 표준 시간대의 datetime형 배열에 적용됩니다.

  • 일광 절약 시간제가 시작될 때 시간 차이에 존재하지 않는 날짜/시간을 생성하는 Hour 속성의 값을 지정하면 Hour 속성의 값은 그다음 시간에 맞춰 조정됩니다.

  • 일광 절약 시간제가 끝날 때 겹치는 시간에 모호한 날짜/시간을 생성하는 Hour 속성의 값을 지정하면 날짜/시간은 해당 시의 두 가지 시간(표준 시간)의 초에 맞춰 조정됩니다.

datetime형 배열에 있는 각 값의 분 숫자 값으로, 크기와 형태가 datetime형 배열과 같은 숫자형 배열로 지정됩니다. 각 분 숫자 값은 0에서 59까지의 정수 값입니다. 이 범위 밖의 값을 지정하면 Hour, Day, Month, Year 속성이 그에 따라 조정되고 Minute 속성은 적절한 범위 내에 유지됩니다. 예를 들어, -1분은 이전 시의 59분에 해당합니다.

datetime형 배열에 있는 각 값의 초 숫자 값으로, 크기와 형태가 datetime형 배열과 같은 숫자형 배열로 지정됩니다. 각 초 값은 보통 0에서 60 미만까지의 범위에 속하는 부동소수점 값입니다. 이 범위 밖의 값을 설정하면 Minute, Hour, Day, Month, Year 속성이 그에 따라 조정되고 Second 속성은 적절한 범위 내에 유지됩니다. 예를 들어, -1초는 이전 분의 59초에 해당합니다.

TimeZone 값이 'UTCLeapSeconds'datetime형 배열의 경우 초의 범위는 0에서 61 미만까지입니다. 60에서 61까지의 값은 윤초(Leap Second) 동안 발생하는 날짜/시간을 나타냅니다. (datetime 데이터형에서 지원하는 윤초 목록은 leapseconds를 참조하십시오.)

읽기 전용 속성입니다.

시스템 표준 시간대 설정으로, 문자형 벡터 또는 string형 스칼라로 지정됩니다. 이 표준 시간대 설정은 MATLAB®이 실행 중인 시스템에서 결정됩니다.

예: America/New_York

예제

모두 축소

로컬 시스템 표준 시간대의 현재 날짜와 시간을 지정합니다.

t = datetime('now','TimeZone','local','Format','d-MMM-y HH:mm:ss Z')
t = datetime
   30-Aug-2023 00:48:04 -0400

한국 서울로 표시되는 표준 시간대의 현재 날짜와 시간을 지정합니다.

t = datetime('now','TimeZone','Asia/Seoul','Format','d-MMM-y HH:mm:ss Z')
t = datetime
   30-Aug-2023 13:48:05 +0900

문자형 벡터로 구성된 셀형 배열에서 datetime형 배열을 만듭니다.

DateStrings = {'2014-05-26';'2014-08-03'};
t = datetime(DateStrings,'InputFormat','yyyy-MM-dd')
t = 2x1 datetime
   26-May-2014
   03-Aug-2014

t의 datetime형 값은 입력 날짜의 형식이 아닌 디폴트 형식을 사용하여 표시됩니다.

R2016b부터는 string 함수를 사용하여 string형 배열을 만들고 datetime형 값으로 변환할 수 있습니다.

str = ["2016-03-24","2016-04-19"]
str = 1x2 string
    "2016-03-24"    "2016-04-19"

입력 형식을 yyyy-MM-dd로 지정하여 문자열을 변환합니다. str이 string형 배열인 경우에도 형식을 문자형 벡터로 지정해야 합니다.

t = datetime(str,'InputFormat','yyyy-MM-dd')
t = 1x2 datetime
   24-Mar-2016   19-Apr-2016

날짜/시간을 밀리초 단위로 나타내는 텍스트에서 datetime형 값을 만듭니다. 더 많은 정보 없이는 datetime 함수가 구문 분석할 수 없는 형식으로 텍스트를 변환하려면 'InputFormat' 이름-값 쌍의 인수를 지정하십시오.

d = '2018-06-25 11:23:37.712';
t = datetime(d,'InputFormat','yyyy-MM-dd HH:mm:ss.SSS')
t = datetime
   25-Jun-2018 11:23:37

이 변환은 소수 초(Fractional Second)를 그대로 유지합니다. 그러나 기본적으로 datetime형 배열은 소수 초를 표시하지 않습니다. 소수 초를 표시하려면 'Format' 이름-값 쌍 또는 Format 속성을 지정하십시오.

t.Format = 'MMM dd, yyyy HH:mm:ss.SSS'
t = datetime
   Jun 25, 2018 11:23:37.712

'InputFormat' 인수는 입력 텍스트로부터 변환하는 경우에만 적용됩니다. Format 속성은 모든 datetime형 배열의 표시 형식을 지정합니다.

ISO 8601 형식의 날짜를 datetime형 값으로 변환합니다.

ISO 8601 형식의 날짜를 포함하는 문자형 벡터로 구성된 셀형 배열을 만듭니다. 이 형식에서 문자 T는 날짜와 시간을 구분하는 구분 기호로 사용됩니다. 각 문자형 벡터는 표준 시간대 오프셋을 포함합니다. 문자 Z는 UTC로부터 오프셋이 없음을 나타냅니다.

DateStrings = {'2014-05-26T13:30-05:00';'2014-08-26T13:30-04:00';'2014-09-26T13:30Z'}
DateStrings = 3x1 cell
    {'2014-05-26T13:30-05:00'}
    {'2014-08-26T13:30-04:00'}
    {'2014-09-26T13:30Z'     }

문자형 벡터를 datetime형 값으로 변환합니다. 입력 형식을 지정할 때 문자 T를 작은따옴표로 묶어 리터럴 문자임을 나타내십시오. TimeZone 이름-값 쌍의 인수를 사용하여 출력 datetime형 배열의 표준 시간대를 지정합니다.

t = datetime(DateStrings,'InputFormat','uuuu-MM-dd''T''HH:mmXXX','TimeZone','UTC')
t = 3x1 datetime
   26-May-2014 18:30:00
   26-Aug-2014 17:30:00
   26-Sep-2014 13:30:00

t의 datetime형 값은 디폴트 형식으로 표시됩니다.

프랑스어로 표기된 날짜를 포함하는 문자형 벡터로 구성된 셀형 배열을 만듭니다.

C = {'8 avril 2013','9 mai 2013';'10 juin 2014','11 juillet 2014'}
C = 2x2 cell
    {'8 avril 2013'}    {'9 mai 2013'     }
    {'10 juin 2014'}    {'11 juillet 2014'}

C에 포함된 문자형 벡터를 datetime형 값으로 변환합니다. 컴퓨터가 영어를 사용하는 로캘로 설정된 경우 'Locale' 이름-값 쌍의 인수를 지정하여 문자열이 프랑스어임을 나타내야 합니다.

t = datetime(C,'InputFormat','d MMMM yyyy','Locale','fr_FR')
t = 2x2 datetime
   08-Apr-2013   09-May-2013
   10-Jun-2014   11-Jul-2014

t에 포함된 datetime형 값은 디폴트 형식과, 시스템 로캘에 따라 MATLAB®이 사용하는 언어로 표시됩니다.

연, 월, 일 값으로 구성된 개별 배열에서 datetime형 배열을 만듭니다.

연도 값 Y와 일 값 D로 구성된 샘플 숫자형 배열을 만듭니다. 이 경우 월 값 M은 스칼라입니다.

Y = [2014;2013;2012];
M = 01;
D = [31;30;31];

datetime형 배열을 만듭니다.

t = datetime(Y,M,D)
t = 3x1 datetime
   31-Jan-2014
   30-Jan-2013
   31-Jan-2012

Format 이름-값 쌍의 인수를 사용하여 출력값의 사용자 지정 표시 형식을 지정합니다.

t = datetime(Y,M,D,'Format','eeee, MMMM d, y')
t = 3x1 datetime
   Friday, January 31, 2014   
   Wednesday, January 30, 2013
   Tuesday, January 31, 2012  

1900년 1월 0일 이후의 일수를 나타내는 Excel® 날짜 번호 값으로 구성된 샘플 배열을 만듭니다.

X = [39558, 39600; 39700, 39800]
X = 2×2

       39558       39600
       39700       39800

X의 값을 datetime형 값으로 변환합니다.

t = datetime(X,'ConvertFrom','excel')
t = 2x2 datetime
   20-Apr-2008   01-Jun-2008
   09-Sep-2008   18-Dec-2008

확장 기능

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

버전 내역

R2014b에 개발됨

모두 확장