Main Content

텍스트 파일에서 날짜/시간 가져오기

열 방향 테이블 형식 데이터에서 형식이 지정된 날짜/시간(예: '01/01/01' 또는 '12:30:45')을 가져오는 방법으로는 다음 세 가지가 있습니다.

  • 가져오기 툴 — 날짜/시간을 대화형 방식으로 선택하고 가져옵니다.

  • readtable 함수 — 날짜/시간을 갖는 변수를 자동으로 감지하여 테이블로 가져옵니다.

  • 가져오기 옵션 — 날짜/시간 변수 가져오기를 더 세부적으로 제어하려면 readtabledetectImportOptions 함수와 함께 사용하십시오. 예를 들어, FillValueDatetimeFormat 등의 속성을 지정할 수 있습니다.

이 예제에서는 이러한 방법을 각각 사용하여 텍스트 파일에서 날짜/시간을 가져오는 방법을 보여줍니다.

가져오기 툴

가져오기 툴을 사용하여 outages.csv 파일을 여십시오. 각 열에 대해 드롭다운 메뉴를 사용하여 날짜/시간의 형식을 지정합니다. 미리 정의된 날짜 형식 중에서 선택하거나 사용자 지정 형식을 입력할 수 있습니다. OutageTime 열을 가져오려면 사용자 지정 형식 yyyy-MM-dd HH:mm을 지정하십시오. 그런 다음 선택 항목 가져오기 버튼을 클릭하여 데이터를 작업 공간으로 가져옵니다.

readtable 함수

readtable 함수를 사용하고 OutageTime 변수의 10개 행을 표시합니다. readtable 은 날짜/시간 변수와 형식을 자동으로 감지합니다.

filename = 'outages.csv';
T = readtable(filename);
T.OutageTime(1:10)
ans = 10x1 datetime
   2002-02-01 12:18
   2003-01-23 00:49
   2003-02-07 21:15
   2004-04-06 05:44
   2002-03-16 06:18
   2003-06-18 02:49
   2004-06-20 14:39
   2002-06-06 19:28
   2003-07-16 16:23
   2004-09-27 11:09

가져오기 옵션

날짜/시간 변수 가져오기를 더 세부적으로 제어하려면 import options 객체를 사용하십시오. 예를 들어, 날짜/시간 표시 형식을 변경하거나 누락된 날짜에 대한 채우기 값을 지정할 수 있습니다.

outages.csv 파일에 대한 import options 객체를 만들고 변수 RestorationTime에 대한 변수 가져오기 옵션을 표시합니다. detectImportOptions 함수는 변수의 데이터형을 자동으로 감지합니다.

opts = detectImportOptions(filename);
getvaropts(opts,'RestorationTime')
ans = 
  DatetimeVariableImportOptions with properties:

   Variable Properties:
              Name: 'RestorationTime'
              Type: 'datetime'
         FillValue: NaT
    TreatAsMissing: {}
         QuoteRule: 'remove'
          Prefixes: {}
          Suffixes: {}
    EmptyFieldRule: 'missing'

   Datetime Options:
    DatetimeFormat: 'default'
    DatetimeLocale: 'en_US'
       InputFormat: ''
          TimeZone: ''

데이터를 가져와서 변수 RestorationTime의 처음 10개 행을 표시합니다. 두 번째 행에는 누락된 날짜/시간 값을 나타내는 NaT가 포함되어 있습니다.

T = readtable(filename,opts);
T.RestorationTime(1:10)   
ans = 10x1 datetime
   2002-02-07 16:50
   NaT             
   2003-02-17 08:14
   2004-04-06 06:10
   2002-03-18 23:23
   2003-06-18 10:54
   2004-06-20 19:16
   2002-06-07 00:51
   2003-07-17 01:12
   2004-09-27 16:37

다른 날짜/시간 표시 형식을 사용하려면 DatetimeFormat 속성을 업데이트한 다음 FillValue 속성을 사용하여 누락된 값을 현재 날짜/시간으로 바꾸십시오. 업데이트된 변수 옵션을 표시합니다.

opts = setvaropts(opts,'RestorationTime', ...
                       'DatetimeFormat','MMMM d, yyyy HH:mm:ss Z',...
                       'FillValue','now');
getvaropts(opts,'RestorationTime')
ans = 
  DatetimeVariableImportOptions with properties:

   Variable Properties:
              Name: 'RestorationTime'
              Type: 'datetime'
         FillValue: July 24, 2022 22:25:13 *
    TreatAsMissing: {}
         QuoteRule: 'remove'
          Prefixes: {}
          Suffixes: {}
    EmptyFieldRule: 'missing'

   Datetime Options:
    DatetimeFormat: 'MMMM d, yyyy HH:mm:ss Z'
    DatetimeLocale: 'en_US'
       InputFormat: ''
          TimeZone: ''

업데이트된 가져오기 옵션을 사용하여 데이터를 읽어와서 변수의 처음 10개 행을 표시합니다.

T = readtable(filename,opts);
T.RestorationTime(1:10)   
ans = 10x1 datetime
   2002-02-07 16:50
   2022-07-24 22:25
   2003-02-17 08:14
   2004-04-06 06:10
   2002-03-18 23:23
   2003-06-18 10:54
   2004-06-20 19:16
   2002-06-07 00:51
   2003-07-17 01:12
   2004-09-27 16:37

datetime 변수 옵션에 대한 자세한 내용은 setvaropts 함수 도움말 페이지를 참조하십시오.

참고 항목

| | | | | | |

관련 항목