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
   01-Feb-2002 12:18:00
   23-Jan-2003 00:49:00
   07-Feb-2003 21:15:00
   06-Apr-2004 05:44:00
   16-Mar-2002 06:18:00
   18-Jun-2003 02:49:00
   20-Jun-2004 14:39:00
   06-Jun-2002 19:28:00
   16-Jul-2003 16:23:00
   27-Sep-2004 11:09:00

가져오기 옵션

날짜/시간 변수 가져오기를 더 세부적으로 제어하려면 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
   07-Feb-2002 16:50:00
   NaT                 
   17-Feb-2003 08:14:00
   06-Apr-2004 06:10:00
   18-Mar-2002 23:23:00
   18-Jun-2003 10:54:00
   20-Jun-2004 19:16:00
   07-Jun-2002 00:51:00
   17-Jul-2003 01:12:00
   27-Sep-2004 16:37:00

다른 날짜/시간 표시 형식을 사용하려면 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: January 25, 2024 22:25:19 *
    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
   February 7, 2002 16:50:00 *  
   January 25, 2024 22:25:19 *  
   February 17, 2003 08:14:00 * 
   April 6, 2004 06:10:00 *     
   March 18, 2002 23:23:00 *    
   June 18, 2003 10:54:00 *     
   June 20, 2004 19:16:00 *     
   June 7, 2002 00:51:00 *      
   July 17, 2003 01:12:00 *     
   September 27, 2004 16:37:00 *

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

참고 항목

| | | | | | |

관련 항목