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

delimitedTextImportOptions

구분된 텍스트에 대한 import options 객체

설명

DelimitedTextImportOptions 객체를 사용하면 MATLAB®이 구분된 텍스트 파일에서 테이블 형식 데이터를 가져오는 방법을 지정할 수 있습니다. 이 객체는 누락된 데이터나 오류를 처리하는 속성과 데이터 가져오기 프로세스를 제어하는 속성을 가집니다.

생성

DelimitedTextImportOptions 객체는 detectImportOptions 함수 또는 여기에서 설명하는 delimitedTextImportOptions 함수를 사용하여 만들 수 있습니다.

  • detectImportOptions를 사용하면 filename에 지정된 구분된 텍스트 파일의 내용을 기반으로 가져오기 속성을 감지하고 채울 수 있습니다.

    opts = detectImportOptions(filename);

  • delimitedTextImportOptions를 사용하면 가져오기 요구 사항을 기반으로 가져오기 속성을 정의할 수 있습니다.

구문

opts = delimitedTextImportOptions
opts = delimitedTextImportOptions('NumVariables',numVars)
opts = delimitedTextImportOptions(___,Name,Value)

설명

예제

opts = delimitedTextImportOptions는 1개의 변수를 갖는 DelimitedTextImportOptions 객체를 만듭니다.

예제

opts = delimitedTextImportOptions('NumVariables',numVars)numVars에 지정된 개수만큼의 변수를 갖는 객체를 만듭니다.

예제

opts = delimitedTextImportOptions(___,Name,Value)는 하나 이상의 이름-값 쌍 인수를 사용하여 DelimitedTextImportOptions 객체의 속성을 추가로 지정합니다.

입력 인수

모두 확장

변수 개수로, 양의 정수 스칼라로 지정됩니다.

속성

모두 확장

변수 속성

변수 이름으로, 문자형 벡터로 구성된 셀형 배열 또는 string형 배열로 지정됩니다. VariableNames 속성은 변수를 가져올 때 사용할 이름을 포함합니다.

데이터에 N개 변수가 포함되어 있지만 변수 이름이 감지되지 않을 경우 VariableNames 속성은 {'Var1','Var2',...,'VarN'}을 포함합니다.

예: opts.VariableNames는 현재(감지된) 변수 이름을 반환합니다.

예: opts.VariableNames(3) = {'Height'}는 세 번째 변수의 이름을 Height로 변경합니다.

데이터형: char | string | cell

변수 데이터형으로, 문자형 벡터로 구성된 셀형 배열 또는 string형 배열로 지정됩니다. VariableTypes 속성은 변수를 가져올 때 사용할 데이터형을 지정합니다. 새 값을 할당해야 하는 경우 VariableTypes를 유효한 데이터형 이름으로 구성된 셀형 배열로 지정하십시오.

VariableTypes 속성을 업데이트하려면 setvartype 함수를 사용하십시오.

예: opts.VariableTypes는 현재(감지된) 변수 데이터형을 반환합니다.

예: opts = setvartype(opts,'Height',{'double'})은 변수 Height의 데이터형을 double로 변경합니다.

데이터형: cell | single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char | string | categorical | datetime

가져올 변수의 서브셋으로, 문자형 벡터, string형 스칼라, 문자형 벡터로 구성된 셀형 배열, string형 배열 또는 숫자형 인덱스로 구성된 배열로 지정됩니다.

SelectedVariableNamesVariableNames 속성에 포함된 이름의 서브셋이어야 합니다. 기본적으로, SelectedVariableNamesVariableNames 속성의 모든 변수 이름을 포함합니다. 즉, 모든 변수를 가져옵니다.

원하는 변수만 가져오려면 SelectedVariableNames 속성을 사용하십시오. 변수의 서브셋만 가져오려면 SelectedVariableNames 속성을 사용하여 서브셋을 지정하고 readtable을 사용하십시오.

예: opts.SelectedVariableNames = {'Height','LastName'}은 가져오기 작업에 두 개의 변수 HeightLastName만 선택합니다.

예: opts.SelectedVariableNames = [1 5]는 가져오기 작업에 두 개의 변수, 첫 번째 변수와 다섯 번째만 선택합니다.

예: T = readtable(filename,opts)opts 객체의 SelectedVariableNames 속성에 지정된 변수만 포함하는 테이블을 반환합니다.

데이터형: uint16 | uint32 | uint64 | char | string | cell

유형별 변수 가져오기 옵션으로, variable import options 객체로 구성된 배열로 반환됩니다. 이 배열은 VariableNames 속성에 지정된 각 변수에 대응되는 객체를 포함합니다. 배열에 포함된 각 객체는 해당 데이터형 데이터를 가져오는 데 필요한 속성을 포함합니다.

변수 옵션은 숫자, 텍스트, logical, datetime, 또는 categorical 데이터형을 지원합니다.

변수에 대한 현재(또는 감지된) 옵션을 쿼리하려면 getvaropts 함수를 사용하십시오.

변수에 대해 옵션을 설정하고 사용자 지정하려면 setvaropts 함수를 사용하십시오.

예: opts.VariableOptionsVariableImportOptions 객체의 모음을 반환합니다. 모음에 포함된 각 객체는 데이터의 각 변수에 대응됩니다.

예: getvaropts(opts,'Height')Height 변수에 대한 VariableImportOptions 객체를 반환합니다.

예: opts = setvaropts(opts,'Height','FillValue',0)은 변수 HeightFillValue 속성을 0으로 설정합니다.

위치 속성

데이터 위치로, 양의 정수 스칼라로 지정되거나 양의 정수 스칼라로 구성된 N-x-2 배열로 지정됩니다. 다음 형식 중 하나를 사용하여 DataLines를 지정하십시오.

다음으로 지정

설명

n

데이터를 포함하는 첫 번째 라인을 지정합니다. n을 사용하여 값을 지정하면 DataLines 속성의 값이 [n inf]로 설정됩니다. 가져오기 함수는 n과 파일 끝 사이의 모든 행을 읽어 들입니다.

n은 0보다 큰 양의 정수여야 합니다.

[n1 n2]

데이터를 포함하는 라인 범위를 지정합니다. n1은 데이터의 첫 번째 라인이고, n2는 데이터의 마지막 라인입니다.

배열 [n1 n2]의 값은 0이 아닌 양의 정수여야 하고, n2n1보다 커야 합니다.

[n1 n2; n3 n4;...]

N개의 서로 다른 라인 범위를 포함하는 N-x-2 배열을 사용하여 읽을 여러 개의 라인 범위를 지정합니다.

여러 개의 라인 범위로 구성된 유효한 배열은 다음을 충족해야 합니다.

  • 라인 범위를 오름차순으로 지정해야 합니다. 즉, 배열에 지정된 첫 번째 라인 범위가 다른 라인 범위보다 파일에서 먼저 나타나야 합니다.

  • 라인 범위가 서로 겹치지 않아야 합니다.

여러 라인 범위를 지정할 때는 배열의 마지막 라인 범위의 끝을 지정할 때만 Inf를 사용하십시오. 예를 들면 [1 3; 5 6; 8 Inf]와 같습니다.

예: opts.DataLines = 5DataLines 속성을 값 [5 inf]로 설정합니다. 5행부터 파일 끝까지 모든 행을 읽어 들입니다.

예: opts.DataLines = [2 6]은 라인 2부터 6까지 읽도록 속성을 설정합니다.

예: opts.DataLines = [1 3; 5 6; 8 inf]1행, 2행, 3행, 5행, 6행, 그리고 8행과 파일 끝 사이의 모든 행을 읽도록 속성을 설정합니다.

데이터형: single | double | uint8 | uint16 | uint32 | uint64

행 이름 위치로, 양의 정수 스칼라로 지정됩니다. RowNamesColumn 속성은 행 이름을 포함하는 열의 위치를 지정합니다.

RowNamesColumn이 0으로 지정된 경우 행 이름을 가져오지 않습니다. 그렇지 않은 경우, 지정된 열에서 행 이름을 가져옵니다.

예: opts.RowNamesColumn = 2;

데이터형: single | double | uint8 | uint16 | uint32 | uint64

변수 이름 위치로, 양의 정수 스칼라로 지정됩니다. VariableNamesLine 속성은 변수 이름이 위치하는 라인 번호를 지정합니다.

VariableNamesLine이 0으로 지정된 경우 변수 이름을 가져오지 않습니다. 그렇지 않은 경우, 지정된 라인에서 변수 이름을 가져옵니다.

예: opts.VariableNamesLine = 6;

데이터형: single | double | uint8 | uint16 | uint32 | uint64

변수 설명 위치로, 양의 정수 스칼라로 지정됩니다. VariableDescriptionsLine 속성은 변수 설명이 위치하는 라인 번호를 지정합니다.

VariableDescriptionsLine이 0으로 지정된 경우 변수 설명을 가져오지 않습니다. 그렇지 않은 경우, 지정된 라인에서 변수 설명을 가져옵니다.

예: opts.VariableDescriptionsLine = 7;

데이터형: single | double | uint8 | uint16 | uint32 | uint64

변수 단위 위치로, 양의 정수 스칼라로 지정됩니다. VariableUnitsLine 속성은 변수 단위가 위치하는 라인 번호를 지정합니다.

VariableUnitsLine이 0으로 지정된 경우 변수 단위를 가져오지 않습니다. 그렇지 않은 경우, 지정된 라인에서 변수 단위를 가져옵니다.

예: opts.VariableUnitsLine = 8;

데이터형: single | double | uint8 | uint16 | uint32 | uint64

구분된 텍스트 속성

필드 구분 기호 문자로, 문자형 벡터, string형 스칼라, 문자형 벡터로 구성된 셀형 배열 또는 string형 배열로 지정됩니다.

예: '|'

예: {';','*'}

데이터형: char | string | cell

공백으로 처리할 문자로, 하나 이상의 문자를 포함하는 문자형 벡터 또는 string형 스칼라로 지정됩니다.

예: ' _'

예: '?!.,'

라인 끝(EOL) 문자로, 문자형 벡터, string형 스칼라, 문자형 벡터로 구성된 셀형 배열 또는 string형 배열로 지정됩니다.

예: '\n'

예: '\r\n'

예: {'\b',':'}

데이터형: char | string | cell

주석 스타일로, 문자형 벡터, string형 스칼라, 문자형 벡터로 구성된 셀형 배열 또는 string형 배열로 지정됩니다.

예를 들어, CommentStyle'%'로 지정하면 동일한 라인에 있는 퍼센트 기호 다음의 텍스트가 무시됩니다.

예: {'/*'}

데이터형: char | string | cell

연속된 구분 기호를 처리하는 절차로, 다음 표에 있는 값 중 하나로 지정됩니다.

연속된 구분 기호 규칙동작
'split'연속된 구분 기호를 여러 개의 필드로 분할합니다.
'join'여러 구분 기호를 하나의 구분 기호로 결합합니다.
'error'가져오기 작업에 대해 오류를 발생시키고 중단합니다.

예: 'join'

데이터형: char | string

선행 구분 기호를 관리하는 방법으로, 다음 표에 있는 값 중 하나로 지정됩니다.

선행 구분 기호 규칙동작
'keep'구분 기호를 유지합니다.
'ignore'구분 기호를 무시합니다.
'error'가져오기 작업에 대해 오류를 발생시키고 중단합니다.

예: 'ignore'

파일과 연결된 문자 인코딩 체계로, 'Encoding'과 함께 'system' 또는 다음 표에 있는 표준 문자 인코딩 체계 이름이 쉼표로 구분되어 지정됩니다.

'Big5'

'ISO-8859-1'

'windows-847'

'Big5-HKSCS'

'ISO-8859-2'

'windows-949'

'CP949'

'ISO-8859-3'

'windows-1250'

'EUC-KR'

'ISO-8859-4'

'windows-1251'

'EUC-JP'

'ISO-8859-5'

'windows-1252'

'EUC-TW'

'ISO-8859-6'

'windows-1253'

'GB18030'

'ISO-8859-7'

'windows-1254'

'GB2312'

'ISO-8859-8'

'windows-1255'

'GBK'

'ISO-8859-9'

'windows-1256'

'IBM866'

'ISO-8859-11'

'windows-1257'

'KOI8-R'

'ISO-8859-13'

'windows-1258'

'KOI8-U'

'ISO-8859-15'

'US-ASCII'

 

'Macintosh'

'UTF-8'

 

'Shift_JIS'

 

예: 'system'은 시스템 디폴트 인코딩을 사용합니다.

데이터형: char | string

대체 규칙

누락된 데이터를 관리하는 방법으로, 다음 표에 있는 값 중 하나로 지정됩니다.

누락 규칙동작
'fill'

누락된 데이터를 FillValue 속성의 내용으로 대체합니다.

FillValue 속성은 가져올 변수의 VariableImportOptions 객체에 지정됩니다. FillValue 속성에 액세스하는 데 대한 자세한 내용은 getvaropts를 참조하십시오.

'error'가져오기를 중지하고 누락된 레코드와 필드를 보여주는 오류 메시지를 표시합니다.
'omitrow'누락된 데이터가 포함된 행을 생략합니다.
'omitvar'누락된 데이터가 포함된 변수를 생략합니다.

예: opts.MissingRule = 'omitrow';uint32

데이터형: char | string

데이터의 빈 라인을 처리하는 절차로, 'skip', 'read' 또는 'error'로 지정됩니다. 가져오기 함수는 공백을 빈 것으로 해석합니다.

빈 라인 규칙동작
'skip'빈 라인을 건너뜁니다.
'read'빈 라인을 가져옵니다. 가져오기 함수는 VariableWidths, VariableOptions, MissingRule과 기타 관련 속성(예: Whitespace)에 지정된 값을 사용하여 빈 라인을 구문 분석합니다.
'error'오류 메시지를 표시하고 가져오기 작업을 중단합니다.

예: opts.EmptyLineRule = 'skip';

데이터형: char | string

가져오기 오류를 처리하는 절차로, 다음 표에 있는 값 중 하나로 지정됩니다.

가져오기 오류 규칙동작
'fill'

오류가 발생한 데이터를 FillValue 속성의 내용으로 대체합니다.

FillValue 속성은 가져올 변수의 VariableImportOptions 객체에 지정됩니다. FillValue 속성에 액세스하는 데 대한 자세한 내용은 getvaropts를 참조하십시오.

'error'가져오기를 중지하고 오류를 일으킨 레코드와 필드를 보여주는 오류 메시지를 표시합니다.
'omitrow'오류가 발생한 행을 생략합니다.
'omitvar'오류가 발생한 변수를 생략합니다.

예: opts.ImportErrorRule = 'omitvar';

데이터형: char | string

데이터의 추가 열을 처리하는 절차로, 다음 표에 있는 값 중 하나로 지정됩니다.

추가 열 규칙동작
'addvars'

추가 열을 가져오기 위해 새 변수를 생성합니다. N개의 추가 열이 있는 경우, 새 변수를 'ExtraVar1', 'ExtraVar2',..., 'ExtraVarN'으로 가져옵니다.

참고: 추가 열은 char 데이터형의 텍스트로 가져옵니다.

'ignore'데이터의 추가 열을 무시합니다.
'wrap'새 레코드로 데이터의 추가 열을 줄 바꿈합니다. 이 동작을 수행해도 변수의 개수는 변경되지 않습니다.
'error'오류 메시지를 표시하고 가져오기 작업을 중단합니다.

데이터형: char | string

객체 함수

getvaropts변수에 대한 가져오기 옵션 가져오기
setvaropts변수에 대한 가져오기 옵션 설정
setvartype변수 데이터형 설정
preview가져오기 옵션을 사용하여 파일에서 8개 행 미리보기

예제

모두 축소

patients.dat에서 여러 개의 변수를 읽기 위한 import options 객체를 정의합니다.

파일의 내용에 따라 이러한 변수의 속성(이름, 유형, 구분 기호 문자, 데이터 시작 위치, 기타 열 규칙)을 정의합니다.

varNames = {'LastName','Gender','Age','Location','Height','Weight','Smoker'} ;
varTypes = {'char','categorical','int32','char','double','double','logical'} ;
delimiter = ',';
dataStartLine = 2;
extraColRule = 'ignore';

delimitedTextImportOptions와 변수 정보를 사용하여 import options 객체 opts를 초기화합니다.

opts = delimitedTextImportOptions('VariableNames',varNames,...
                                'VariableTypes',varTypes,...
                                'Delimiter',delimiter,...
                                'DataLines', dataStartLine,...
                                'ExtraColumnsRule',extraColRule); 

preview 함수와 import options 객체를 사용하여 데이터를 미리 봅니다.

preview('patients.dat',opts)
ans=8×7 table
     LastName     Gender    Age             Location              Height    Weight    Smoker
    __________    ______    ___    ___________________________    ______    ______    ______

    'Smith'       Male      38     'County General Hospital'        71       176      false 
    'Johnson'     Male      43     'VA Hospital'                    69       163      false 
    'Williams'    Female    38     'St. Mary's Medical Center'      64       131      false 
    'Jones'       Female    40     'VA Hospital'                    67       133      false 
    'Brown'       Female    49     'County General Hospital'        64       119      false 
    'Davis'       Female    46     'St. Mary's Medical Center'      68       142      false 
    'Miller'      Female    33     'VA Hospital'                    64       142      false 
    'Wilson'      Male      40     'VA Hospital'                    68       180      false 

readtable을 사용하여 데이터를 가져옵니다.

T = readtable('patients.dat',opts);
whos T
  Name        Size            Bytes  Class    Attributes

  T         100x7             32332  table              

R2016b에 개발됨