detectImportOptions
파일 내용에 따라 가져오기 옵션 생성
설명
은 파일에서 테이블을 찾아서 그 테이블의 가져오기 옵션을 반환합니다. options 객체를 수정하고 opts = detectImportOptions(filename)readtable에서 이를 사용하여 MATLAB®이 테이블 형식 데이터를 가져오는 방법을 제어할 수 있습니다. 반환되는 options의 유형은 파일 확장자에 따라 달라집니다.
스프레드시트 파일의 경우 함수는
SpreadsheetImportOptions객체를 반환합니다.텍스트 파일의 경우 함수는
DelimitedTextImportOptions객체나FixedWidthImportOptions객체를 반환합니다.JSON 파일의 경우 함수는
JSONImportOptions객체를 반환합니다.XML 파일의 경우 함수는
XMLImportOptions객체를 반환합니다.Microsoft® Word 문서의 경우 함수는
WordDocumentImportOptions객체를 반환합니다.HTML 파일의 경우 함수는
HTMLImportOptions객체를 반환합니다.
는 하나 이상의 이름-값 인수를 사용하여 옵션을 추가로 지정합니다. 예를 들어, 가져올 변수와 행을 지정할 수 있습니다.opts = detectImportOptions(filename,Name=Value)
예제
import options 객체를 사용하여 readtable이 파일을 해석하는 방법을 구성합니다. 예를 들어, import options 객체를 사용하여 스프레드시트 파일에서 지정된 변수만 읽어옵니다.
먼저, 변수 이름 및 유형을 포함한 스프레드시트 파일의 특징을 검출하기 위해 detectImportOptions를 사용해서 파일에서 import options 객체를 만듭니다. 이 경우 detectImportOptions는 SpreadsheetImportOptions 객체를 만듭니다.
opts = detectImportOptions("patients.xls")opts =
SpreadsheetImportOptions with properties:
Sheet Properties:
Sheet: ''
Replacement Properties:
MissingRule: 'fill'
ImportErrorRule: 'fill'
MergedCellColumnRule: 'placeleft'
MergedCellRowRule: 'placetop'
Variable Import Properties: Set types by name using setvartype
VariableNames: {'LastName', 'Gender', 'Age' ... and 7 more}
VariableTypes: {'char', 'char', 'double' ... and 7 more}
SelectedVariableNames: {'LastName', 'Gender', 'Age' ... and 7 more}
VariableOptions: Show all 10 VariableOptions
Access VariableOptions sub-properties using setvaropts/getvaropts
VariableNamingRule: 'modify'
Range Properties:
DataRange: 'A2' (Start Cell)
VariableNamesRange: 'A1'
RowNamesRange: ''
VariableUnitsRange: ''
VariableDescriptionsRange: ''
To display a preview of the table, use preview
import options 객체를 수정하여 가져올 변수를 지정합니다. 그런 다음 import options 객체와 함께 readtable을 사용하여 지정된 변수를 가져옵니다. 테이블의 처음 5개 행을 표시합니다.
opts.SelectedVariableNames = ["Systolic","Diastolic"]; T = readtable("patients.xls",opts); T(1:5,:)
ans=5×2 table
Systolic Diastolic
________ _________
124 93
109 77
125 83
117 75
122 80
import options 객체를 사용하여 readtable이 파일을 해석하는 방법을 구성합니다. 예를 들어 import options 객체를 사용하여 텍스트 파일의 일부만 읽어옵니다.
먼저, 변수 이름 및 유형, 구분자, 공백 문자를 포함한 텍스트 파일의 특징을 검출하기 위해 detectImportOptions를 사용해서 import options 객체를 만듭니다. 이 경우 detectImportOptions는 DelimitedTextImportOptions 객체를 만듭니다.
opts = detectImportOptions("airlinesmall.csv")opts =
DelimitedTextImportOptions with properties:
Format Properties:
Delimiter: {','}
Whitespace: '\b\t '
LineEnding: {'\n' '\r' '\r\n'}
CommentStyle: {}
ConsecutiveDelimitersRule: 'split'
LeadingDelimitersRule: 'keep'
TrailingDelimitersRule: 'ignore'
EmptyLineRule: 'skip'
Encoding: 'ISO-8859-1'
Replacement Properties:
MissingRule: 'fill'
ImportErrorRule: 'fill'
ExtraColumnsRule: 'addvars'
Variable Import Properties: Set types by name using setvartype
VariableNames: {'Year', 'Month', 'DayofMonth' ... and 26 more}
VariableTypes: {'double', 'double', 'double' ... and 26 more}
SelectedVariableNames: {'Year', 'Month', 'DayofMonth' ... and 26 more}
VariableOptions: Show all 29 VariableOptions
Access VariableOptions sub-properties using setvaropts/getvaropts
VariableNamingRule: 'modify'
Location Properties:
DataLines: [2 Inf]
VariableNamesLine: 1
RowNamesColumn: 0
VariableUnitsLine: 0
VariableDescriptionsLine: 0
To display a preview of the table, use preview
import options 객체를 수정하여 가져올 변수의 서브셋을 지정합니다. 그런 다음 import options 객체와 함께 readtable을 사용하여 데이터 서브셋을 가져옵니다.
opts.SelectedVariableNames = ["TaxiIn","TaxiOut"]; T = readtable("airlinesmall.csv",opts);
Microsoft Word 문서 파일에 대한 가져오기 옵션을 감지하고, 가져올 테이블을 지정한 다음 데이터를 읽어 들입니다.
파일 MaintenanceReport.docx에는 두 개의 테이블이 포함되어 있습니다. 두 번째 테이블의 마지막 행에는 테이블 변수와 일치하지 않는 병합된 열을 가진 셀이 들어 있습니다.
detectImportOptions 함수를 사용하여 가져오기 옵션을 감지합니다. TableIndex를 2로 설정하여 두 번째 테이블에서 읽어 들이도록 지정합니다.
filename = "MaintenanceReport.docx"; opts = detectImportOptions(filename,'TableIndex',2)
opts =
WordDocumentImportOptions with properties:
Replacement Properties:
MissingRule: "fill"
ImportErrorRule: "fill"
EmptyRowRule: "skip"
MergedCellColumnRule: "placeleft"
MergedCellRowRule: "placetop"
ExtraColumnsRule: "addvars"
Variable Import Properties: Set types by name using setvartype
VariableNames: ["Description" "Category" "Urgency" "Resolution" "Cost"]
VariableTypes: ["string" "string" "string" "string" "string"]
SelectedVariableNames: ["Description" "Category" "Urgency" "Resolution" "Cost"]
VariableOptions: Show all 5 VariableOptions
Access VariableOptions sub-properties using setvaropts/getvaropts
VariableNamingRule: "preserve"
Location Properties:
TableSelector: "(//w:tbl)[2]"
DataRows: [2 Inf]
VariableNamesRow: 1
VariableUnitsRow: 0
VariableDescriptionsRow: 0
RowNamesColumn: 0
병합된 열이 있는 셀을 가진 행을 읽어 들이지 않고 건너뛰도록 MergedCellColumnRule 속성을 'omitrow'로 설정합니다.
opts.MergedCellColumnRule = 'omitrow';options 객체와 함께 readtable 함수를 사용하여 Microsoft Word 문서 파일의 테이블을 읽어 들입니다.
filename = "MaintenanceReport.docx";
T = readtable(filename,opts)T=3×5 table
Description Category Urgency Resolution Cost
_____________________________________________________________________ ____________________ ________ __________________ ________
"Items are occasionally getting stuck in the scanner spools." "Mechanical Failure" "Medium" "Readjust Machine" "$45"
"Loud rattling and banging sounds are coming from assembler pistons." "Mechanical Failure" "Medium" "Readjust Machine" "$35"
"There are cuts to the power when starting the plant." "Electronic Failure" "High" "Full Replacement" "$16200"
HTML 파일에 대한 가져오기 옵션을 감지하고, 가져올 테이블을 지정한 다음 데이터를 읽어 들입니다.
URL https://www.mathworks.com/help/matlab/text-files.html에서 텍스트 "readtable"을 포함하는 첫 번째 테이블의 가져오기 옵션을 감지합니다. detectImportOptions 함수를 사용하여 가져오기 옵션을 감지하고 XPath 쿼리 "//TABLE[contains(.,'readtable')]"을 사용하여 읽어 들일 테이블을 지정합니다. ReadVariableNames를 false로 설정하여 변수 이름을 읽어 들이지 않도록 지정합니다.
url = "https://www.mathworks.com/help/matlab/text-files.html"; opts = detectImportOptions(url,'TableSelector',"//TABLE[contains(.,'readtable')]",'ReadVariableNames',false)
opts =
HTMLImportOptions with properties:
Replacement Properties:
MissingRule: "fill"
ImportErrorRule: "fill"
EmptyRowRule: "skip"
MergedCellColumnRule: "placeleft"
MergedCellRowRule: "placetop"
ExtraColumnsRule: "addvars"
Variable Import Properties: Set types by name using setvartype
VariableNames: ["Var1" "Var2"]
VariableTypes: ["string" "string"]
SelectedVariableNames: ["Var1" "Var2"]
VariableOptions: Show all 2 VariableOptions
Access VariableOptions sub-properties using setvaropts/getvaropts
VariableNamingRule: "preserve"
Location Properties:
TableSelector: "//TABLE[contains(.,'readtable')]"
DataRows: [1 Inf]
VariableNamesRow: 0
VariableUnitsRow: 0
VariableDescriptionsRow: 0
RowNamesColumn: 0
readtable 함수를 사용하여 테이블을 읽어 들입니다.
T = readtable(url,opts)
T=4×2 table
"readtable" "Create table from file"
"writetable" "Write table to file"
"readtimetable" "Create timetable from file"
"writetimetable" "Write timetable to file"
가져오기 옵션을 지정하여 텍스트 데이터를 문자열 데이터형으로 가져옵니다.
파일에 대한 options 객체를 만듭니다.
opts = detectImportOptions('outages.csv');readtable을 사용하여 가져올 변수를 지정한 다음 요약을 표시합니다. 선택한 변수의 데이터형은 char입니다.
opts.SelectedVariableNames = {'Region','Cause'};
T = readtable('outages.csv',opts);
summary(T)T: 1468×2 table
Variables:
Region: cell array of character vectors
Cause: cell array of character vectors
Statistics for applicable variables:
NumMissing
Region 0
Cause 0
텍스트 데이터를 string 데이터형으로 가져온 다음 TextType 이름-값 쌍을 지정하여 가져오기 옵션을 만듭니다.
opts = detectImportOptions('outages.csv','TextType','string');
readtable을 사용하여 가져올 변수를 지정한 다음 요약을 표시합니다. 이제, 선택한 변수의 데이터형은 string입니다.
opts.SelectedVariableNames = {'Region','Cause'};
T = readtable('outages.csv',opts);
summary(T)T: 1468×2 table
Variables:
Region: string
Cause: string
Statistics for applicable variables:
NumMissing
Region 0
Cause 0
XML 파일의 내용을 테이블로 가져옵니다.
students.xml 파일에는 Student라는 이름의 형제 노드 3개가 있으며 각 노드에는 동일한 자식 노드와 특성이 포함되어 있습니다.
type students.xml<?xml version="1.0" encoding="utf-8"?>
<Students>
<Student ID="S11305">
<Name FirstName="Priya" LastName="Thompson" />
<Age>18</Age>
<Year>Freshman</Year>
<Address>
<Street xmlns="https://www.mathworks.com">591 Spring Lane</Street>
<City>Natick</City>
<State>MA</State>
</Address>
<Major>Computer Science</Major>
<Minor>English Literature</Minor>
</Student>
<Student ID="S23451">
<Name FirstName="Conor" LastName="Cole" />
<Age>18</Age>
<Year>Freshman</Year>
<Address>
<Street xmlns="https://www.mathworks.com">4641 Pearl Street</Street>
<City>San Francisco</City>
<State>CA</State>
</Address>
<Major>Microbiology</Major>
<Minor>Public Health</Minor>
</Student>
<Student ID="S119323">
<Name FirstName="Morgan" LastName="Yang" />
<Age>21</Age>
<Year>Senior</Year>
<Address>
<Street xmlns="https://www.mathworks.com">30 Highland Road</Street>
<City>Detriot</City>
<State>MI</State>
</Address>
<Major>Political Science</Major>
</Student>
</Students>
먼저, XML 파일의 특징을 검출하기 위해 detectImportOptions를 사용해서 XMLImportOptions 객체를 만듭니다. VariableSelectors 이름-값 인수를 Street 요소 노드의 XPath 표현식으로 지정하여 도로 이름만 테이블로 읽어옵니다. RegisteredNamespaces 이름-값 인수를 설정하여 사용자 지정 네임스페이스 접두사를 기존 네임스페이스 URL에 등록합니다.
opts = detectImportOptions("students.xml",RegisteredNamespaces=["myPrefix","https://www.mathworks.com"], ... VariableSelectors="//myPrefix:Street");
그런 다음 import options 객체와 함께 readtable을 사용하여 지정된 변수를 가져옵니다.
T = readtable("students.xml",opts)T=3×1 table
Street
___________________
"591 Spring Lane"
"4641 Pearl Street"
"30 Highland Road"
입력 인수
읽을 파일의 이름으로, 문자형 벡터 또는 string형 스칼라로 지정됩니다.
파일의 위치에 따라 filename은 다음 형식 중 하나가 될 수 있습니다.
위치 | 형식 | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| 현재 폴더 또는 MATLAB 경로의 폴더 |
예: | ||||||||
폴더 안의 파일 | 파일이 현재 폴더나 MATLAB 경로의 폴더에 없는 경우, 예: 예: | ||||||||
| 인터넷 URL | 파일이 인터넷 URL(Uniform Resource Locator)로 지정된 경우, 예: | ||||||||
원격 위치 | 파일이 원격 위치에 저장된 경우,
원격 위치에 따라
자세한 내용은 원격 데이터로 작업하기 항목을 참조하십시오. 예: |
filename에 파일 확장자가 포함되는 경우 detectImportOptions는 확장자를 통해 파일 형식을 결정하게 됩니다. 파일 형식을 따로 나타내고자 하면 'FileType' 이름-값 쌍을 지정해야 합니다.
detectImportOptions 함수가 지원하는 파일 확장자에는 .txt, .dat, .csv, .xls, .xlsb, .xlsm, .xlsx, .xltm, .xltx, .ods, .json, .xml, .docx, .html, .xhtml, .htm, .zip, .gz, .tar이 있습니다.
압축된 파일 형식은 파일로 읽힙니다. 아카이브된 파일 형식은 폴더로 처리됩니다. 예를 들어, 함수는 mydatafiles.zip을 폴더로 해석하므로, 이 파일 내에 있는 파일을 지정해야 합니다(예: mydatafiles.zip/file1.xlsx). .gz 확장자로 끝나는 파일의 경우, 함수는 .gz 앞에 있는 확장자를 사용하여 파일 형식을 확인합니다. 예를 들어, mydata.csv.gz는 CSV 파일로 읽힙니다. (R2025a 이후)
파일 확장자 .xlsb와 .ods는 Windows®용 Excel®이 설치되어 있는 플랫폼에서만 지원됩니다.
데이터형: char | string
이름-값 인수
선택적 인수 쌍을 Name1=Value1,...,NameN=ValueN으로 지정합니다. 여기서 Name은 인수 이름이고 Value는 대응값입니다. 이름-값 인수는 다른 인수 뒤에 와야 하지만, 인수 쌍의 순서는 상관없습니다.
예: detectImportOptions(filename,FileType="spreadsheet")는 지정된 파일이 스프레드시트임을 나타냅니다.
데이터 및 제목 위치
파일의 시작 부분에서 건너뛸 제목 라인 수로, 음이 아닌 정수로 지정됩니다. 이 이름-값 인수를 지정하지 않으면 detectImportOptions는 건너뛸 라인 수를 자동으로 감지합니다.
변수 이름과 데이터는 제목이 아닌 첫 번째 라인부터 읽힙니다.
데이터형: single | double
파일에서 읽을 범위로, 다음 형식을 사용하여 string형 스칼라, 문자형 벡터 또는 숫자형 벡터로 지정됩니다.
Range를 지정하는 방법 | 설명 |
|---|---|
시작 요소 | 데이터의 시작 요소를 다음 값 중 하나로 지정합니다.
예: 예: |
사각 범위 | 데이터의 사각 범위를 다음 값 중 하나로 지정합니다.
열의 개수는 예: 예: |
행 범위 |
예: |
열 범위 |
열의 개수는 예: |
명명된 범위(스프레드시트만 해당) | 스프레드시트에서 범위를 식별하는 이름을 만들 수 있습니다. 예를 들어, 스프레드시트의 사각형 부분을 선택하고 |
지정되지 않거나 비어 있음 | 이 이름-값 인수를 지정하지 않으면 참고: 사용된 범위는 실제로 데이터가 들어 있는 파일의 사각형 부분을 말합니다. |
데이터의 위치로, 다음 형식을 사용하여 string형 스칼라, 문자형 벡터, 양의 정수 또는 양의 정수로 구성된 N×2 배열로 지정됩니다.
DataRange를 지정하는 방법 | 설명 |
|---|---|
시작 셀 | A1 표기법을 사용하여, 데이터의 시작 셀을 열 문자와 행 번호를 포함하는 string형 스칼라나 문자형 벡터로 지정합니다. 예를 들어,
예: |
시작 행 | 양의 행 인덱스를 사용하여 데이터를 포함하는 시작 행을 지정합니다.
예: |
사각 범위 |
예: |
행 범위 |
예: |
열 범위 |
예: |
여러 개의 행 범위 |
여러 개의 행 범위로 구성된 유효한 배열은 다음을 충족해야 합니다.
예: |
비어 있음 | 데이터를 읽지 않습니다. 예: |
읽을 워크시트로, 워크시트 인덱스를 나타내는 양의 정수나 워크시트 이름을 포함하는 string형 스칼라 또는 문자형 벡터로 지정됩니다. 기본적으로 detectImportOptions는 첫 번째 시트를 읽습니다.
string형 스칼라 또는 문자형 벡터를 지정하는 경우 워크시트 이름에는 콜론(:)을 사용할 수 없습니다. 스프레드시트 파일에서 시트의 이름을 확인하려면 sheets = sheetnames(filename)을 사용하십시오. 자세한 내용은 sheetnames를 참조하십시오.
예: 2
예: "MySheetName"
여러 테이블을 포함하는 파일에서 읽어 들일 테이블의 인덱스로, 양의 정수로 지정됩니다. 기본적으로 detectImportOptions는 첫 번째 테이블을 읽습니다.
TableIndex를 지정하면 detectImportOptions 함수가 TableSelector를 동일한 XPath 표현식으로 자동으로 설정합니다.
데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
읽어 들일 테이블로, string형 스칼라 또는 문자형 벡터로 지정됩니다. 이 이름-값 인수를 지정하지 않으면 detectImportOptions는 테이블 위치를 감지합니다.
JSON 파일
읽어 들일 테이블을 JSON 포인터를 포함하는 string형 스칼라 또는 문자형 벡터로 지정합니다. TableSelector를 유효한 RFC 6901 JSON 포인터로 지정해야 합니다. 자세한 내용은 IETF definition of JSON Pointer 항목을 참조하십시오.
빈 string형("")은 전체 JSON 파일을 의미합니다.
예: TableSelector="/engineID"
XML, Microsoft Word 및 HTML 파일
읽어 들일 테이블을 XPath 표현식을 포함하는 string형 스칼라 또는 문자형 벡터로 지정합니다. 유효한 XPath 버전 1.0 표현식으로 TableSelector를 지정해야 합니다.
| 선택 작업 | 구문 |
|---|---|
| 문서에서의 위치에 관계없이 선택하려는 노드와 이름이 일치하는 모든 노드를 선택합니다. | 이름 앞에 두 개의 슬래시(//)를 붙입니다. |
| 요소 노드에 속한 특성 값을 선택합니다. | 특성 앞에 골뱅이 기호(@)를 붙입니다. |
| 노드 세트에서 특정 노드를 선택합니다. | 대괄호([]) 안에 선택하고자 하는 노드 인덱스를 제공합니다. |
| 연산 우선 순위를 지정합니다. | 먼저 평가할 표현식을 괄호로 묶습니다. |
예: TableSelector="//table[1]"
읽어 들일 테이블 데이터의 JSON 키 이름 또는 XML 노드 이름으로, string형 스칼라 또는 문자형 벡터로 지정됩니다.
열을 가로질러 병합된 셀에 대한 규칙으로, 다음 표에 있는 값 중 하나로 지정됩니다.
| 가져오기 규칙 | 동작 |
|---|---|
"placeleft" | 가장 왼쪽 셀에 데이터를 배치하고 나머지 셀을 가져올 변수의 |
"placeright" | 가장 오른쪽 셀에 데이터를 배치하고 나머지 셀을 가져올 변수의 |
"duplicate" | 모든 셀의 데이터를 복제합니다. |
"omitrow" | 병합된 셀이 있는 행을 생략합니다. |
"error" | 오류 메시지를 표시하고 가져오기 작업을 취소합니다. |
행을 가로질러 병합된 셀에 대한 규칙으로, 다음 표에 있는 값 중 하나로 지정됩니다.
| 가져오기 규칙 | 동작 |
|---|---|
"placetop" | 맨 위쪽 셀에 데이터를 배치하고 나머지 셀을 가져올 변수의 |
"placebottom" | 맨 아래쪽 셀에 데이터를 배치하고 나머지 셀을 가져올 변수의 |
"duplicate" | 모든 셀의 데이터를 복제합니다. |
"omitvar" | 병합된 셀이 있는 변수를 생략합니다. |
"error" | 오류 메시지를 표시하고 가져오기 작업을 취소합니다. |
변수
변수 이름을 읽을지 여부로, 숫자형 값 또는 논리값 1(true) 또는 0(false)으로 지정됩니다. 이 이름-값 인수를 지정하지 않으면 detectImportOptions는 변수 이름이 있는지 자동으로 감지합니다.
값 | 설명 |
|---|---|
| 변수 이름을 읽습니다. |
| 변수 이름을 읽지 않습니다. |
| 지정되지 않음 | 범위에 변수 이름이 포함되어 있는지 자동으로 감지합니다. |
텍스트, 스프레드시트, Microsoft Word 및 HTML 파일의 경우 변수 이름은 헤더 행 이후에 감지됩니다. JSON 파일의 경우 변수 이름은 객체 키 이름에서 감지됩니다 (R2026a 이후). XML 파일의 경우 변수 이름은 요소 노드와 특성 이름에서 감지됩니다.
ReadVariableNames와 ReadRowNames가 모두 true인 경우, detectImportOptions는 읽을 영역의 첫 번째 행의 첫 번째 열에 있는 이름을 속성 T.Properties.DimensionNames의 첫 번째 차원 이름으로 저장합니다.
변수 이름에 대한 규칙으로, 다음 값 중 하나로 지정됩니다.
"modify"— 유효하지 않은 변수 이름(유효 여부는isvarname함수의 판정에 따름)을 유효한 MATLAB 식별자로 변환합니다. 이 값은 텍스트 파일과 스프레드시트 파일에 대한 디폴트 값입니다."preserve"— 공백과 비ASCII 문자가 포함된 변수 이름과 같이 MATLAB 식별자로 유효하지 않은 변수 이름을 그대로 유지합니다. 이 값은 JSON, XML, Microsoft Word 및 HTML 파일에 대한 디폴트 값입니다.
변수 이름과 행 이름은 유효한 MATLAB 식별자가 아니어도 됩니다. 이러한 이름에는 공백 또는 비ASCII 문자까지 포함하여 모든 문자를 사용할 수 있습니다. 또한 영문자뿐만 아니라 어떤 문자로도 시작할 수 있습니다.
예상 변수 개수로, 음이 아닌 정수로 지정됩니다. 이 이름-값 인수를 지정하지 않으면 detectImportOptions는 변수 개수를 자동으로 감지합니다.
변수 이름의 위치로, 음이 아닌 정수로 지정됩니다.
VariableNamesLine이 0이면 detectImportOptions는 변수 이름을 감지하지 않습니다. 그렇지 않은 경우, detectImportOptions는 지정된 라인에서 변수 이름을 감지합니다.
변수 이름이 존재하고 VariableNamesLine과 ReadVariableNames가 모두 지정되지 않은 경우, detectImportOptions는 변수 이름이 포함된 라인을 감지하여 변수 이름을 가져옵니다.
데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
변수 이름의 위치로, 다음 형식을 사용하여 string형 스칼라, 문자형 벡터 또는 양의 정수로 지정됩니다.
VariableNamesRange를 지정하는 방법 | 설명 |
|---|---|
시작 셀 | A1 표기법을 사용하여, 변수 이름의 시작 셀을 열 문자와 행 번호를 포함하는 string형 스칼라나 문자형 벡터로 지정합니다. 예: |
사각 범위 |
범위는 한 행으로만 이루어져야 합니다. 예: |
숫자 인덱스 | 양의 행 인덱스를 사용하여 변수 이름을 포함하는 행을 지정합니다. 예: |
행 범위 |
변수 이름은 하나의 행에 있어야 합니다. 예: |
지정되지 않거나 비어 있음 | 변수 이름이 없음을 나타냅니다. 예: |
데이터형: string | char | single | double
변수 이름의 위치로, 음이 아닌 정수로 지정됩니다.
VariableNamesRow가 0이면 detectImportOptions는 변수 이름을 감지하지 않습니다. 그렇지 않은 경우, detectImportOptions는 지정된 행에서 변수 이름을 감지합니다.
VariableNamesRow를 지정하지 않은 경우 ReadVariableNames가 true(디폴트 값)이면 detectImportOptions는 변수 이름을 가져옵니다. 둘 다 지정되지 않은 경우 detectImportOptions는 행에 가져올 변수 이름이 포함되어 있는지 감지합니다.
데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
테이블 변수로 읽어 들일 JSON 키 이름 또는 XML 노드 이름으로, string형 배열, 문자형 벡터 또는 문자형 벡터로 구성된 셀형 배열로 지정됩니다. 중첩 노드가 동일한 이름을 가지면 VariableNodeNames는 최상위 수준의 노드를 선택합니다.
예: VariableNodeNames=["XMLNodeName1","XMLNodeName2"]
읽어 들일 변수로, string형 배열, 문자형 벡터 또는 문자형 벡터로 구성된 셀형 배열로 지정됩니다. 이 이름-값 인수를 지정하지 않으면 detectImportOptions는 변수의 위치를 감지합니다.
JSON 파일
(R2026a 이후)
읽어 들일 변수를 JSON 포인터를 포함하는 string형 배열, 문자형 벡터 또는 문자형 벡터로 구성된 셀형 배열로 지정합니다. VariableSelectors는 유효한 RFC 6901 JSON 포인터로 지정해야 합니다. 자세한 내용은 IETF definition of JSON Pointer 항목을 참조하십시오.
VariableSelectors 값의 별표(*)는 해당 수준의 전체 배열이 선택됨을 나타냅니다.
키를 변수로 읽어 들이려면 string형 "Keys"를 VariableSelectors와 함께 포함합니다. 예를 들면 VariableSelectors=["Keys" "/ID" "/Name/FirstName"]과 같습니다.
빈 string형("")은 전체 JSON 파일을 의미합니다.
예: VariableSelectors="/enginetemp"
예: VariableSelectors=["/enginetemp1","/enginetemp2"]
XML 파일
읽어 들일 변수를 XPath 표현식을 포함하는 string형 배열, 문자형 벡터 또는 문자형 벡터로 구성된 셀형 배열로 지정합니다. 유효한 XPath 버전 1.0 표현식으로 VariableSelectors를 지정해야 합니다. 예를 들어, 다음 구조를 갖는 XML 파일 myFile.xml을 가져오고자 한다고 가정하겠습니다.
<data>
<table category="ones">
<var>1</var>
<var>2</var>
</table>
<table category="tens">
<var>10</var>
<var>20</var>
</table>
</data>
| 선택 작업 | 구문 | 예 |
|---|---|---|
| 문서에서의 위치에 관계없이 선택하려는 노드와 이름이 일치하는 모든 노드를 선택합니다. | 이름 앞에 두 개의 슬래시(//)를 붙입니다. | 이름이 opts = detectImportOptions("myFile.xml",VariableSelectors="//var") |
| 요소 노드에 속한 특성 값을 선택합니다. | 특성 앞에 골뱅이 기호(@)를 붙입니다. |
opts = detectImportOptions("myFile.xml",VariableSelectors="//table/@category") |
| 노드 세트에서 특정 노드를 선택합니다. | 대괄호([]) 안에 선택하고자 하는 노드 인덱스를 제공합니다. | 각 opts = detectImportOptions("myFile.xml",VariableSelectors="//table/var[1]") |
| 연산 우선 순위를 지정합니다. | 먼저 평가할 표현식을 괄호로 묶습니다. | 각 opts = detectImportOptions("myFile.xml",VariableSelectors="//table/var[1]") |
첫 번째 opts = detectImportOptions("myFile.xml",VariableSelectors="(//table/var)[1]") |
행
첫 번째 열을 행 이름으로 읽어 들일지 여부로, 숫자형 값 또는 논리값 1(true) 또는 0(false)으로 지정됩니다.
값 | 설명 |
|---|---|
| 읽을 영역의 첫 번째 열에서 행 이름을 읽어 들입니다. |
| 영역의 첫 번째 열에서 데이터를 읽어 들이지만 행 이름을 만들지는 않습니다. |
ReadVariableNames와 ReadRowNames가 모두 true인 경우, detectImportOptions는 읽을 영역의 첫 번째 행의 첫 번째 열에 있는 이름을 속성 T.Properties.DimensionNames의 첫 번째 차원 이름으로 저장합니다.
행 이름의 위치로, 음이 아닌 정수로 지정됩니다.
RowNamesColumn이 0이면 detectImportOptions는 행 이름을 감지하지 않습니다. 그렇지 않은 경우, detectImportOptions는 지정된 열에서 행 이름을 감지합니다.
RowNamesColumn을 지정하지 않은 경우 ReadRowNames가 true이면 detectImportOptions는 첫 번째 열을 행 이름으로 감지합니다.
행 이름의 위치로, 다음 형식을 사용하여 string형 스칼라, 문자형 벡터 또는 양의 정수로 지정됩니다.
RowNamesRange를 지정하는 방법 | 설명 |
|---|---|
시작 셀 | A1 표기법을 사용하여, 행 이름의 시작 셀을 열 문자와 행 번호를 포함하는 string형 스칼라나 문자형 벡터로 지정합니다.
예: |
사각 범위 |
행 개수는 데이터의 행 개수와 일치해야 하고, 범위는 한 열로만 이루어져야 합니다. 예: |
열 범위 |
행 이름은 하나의 열에 있어야 합니다. 예: |
숫자 인덱스 | 양의 열 인덱스를 사용하여 행 이름을 포함하는 열을 지정합니다. 예: |
지정되지 않거나 비어 있음 | 행 이름이 없음을 나타냅니다. 예: |
데이터형: string | char | single | double
행 이름으로, string형 스칼라 또는 문자형 벡터로 지정됩니다. 이 이름-값 인수를 지정하지 않으면 detectImportOptions는 ReadRowNames가 true인 경우를 제외하고는 행 이름을 가져오지 않습니다.
JSON 파일
(R2026a 이후)
행 이름을 JSON 포인터를 포함하는 string형 스칼라 또는 문자형 벡터로 지정합니다. RowNamesSelector를 유효한 RFC 6901 JSON 포인터로 지정해야 합니다. 자세한 내용은 IETF definition of JSON Pointer 항목을 참조하십시오.
예: RowNamesSelector="/engineID"
XML 파일
행 이름을 XPath 표현식을 포함하는 string형 스칼라 또는 문자형 벡터로 지정합니다. 유효한 XPath 버전 1.0 표현식으로 RowNamesSelector를 지정해야 합니다.
예: RowNamesSelector="/RootNode/ChildNode"
테이블에서 개별 행을 선택하기 위한 XPath 표현식으로, string형 스칼라 또는 문자형 벡터로 지정됩니다. 유효한 XPath 버전 1.0 표현식으로 RowSelector를 지정해야 합니다.
이 이름-값 인수를 지정하지 않으면 detectImportOptions는 행의 위치를 감지합니다.
예: "/RootNode/ChildNode"
행을 지정하는 XML 노드로, string형 스칼라 또는 문자형 벡터로 지정됩니다.
데이터형
가져오는 텍스트 데이터의 유형으로, 다음 값 중 하나로 지정됩니다.
"char"— 텍스트 데이터를 문자형 벡터로 가져옵니다. 이 값은 텍스트 파일과 스프레드시트 파일에 대한 디폴트 값입니다."string"— 텍스트 데이터를 string형 배열로 가져옵니다. 이 값은 JSON, XML, Microsoft Word 및 HTML 파일에 대한 디폴트 값입니다.
가져오는 날짜/시간 데이터의 유형으로, 다음 표에 있는 값 중 하나로 지정됩니다.
| 값 | 결과 데이터형 |
|---|---|
"datetime" | MATLAB |
"text" | 데이터형은
|
"exceldatenum" | Excel 날짜 일련 번호 값 이 값은 스프레드시트 파일에만 유효합니다. 날짜 일련 번호 값은 주어진 기준 날짜로부터의 일수로, 단일 숫자입니다. Excel 날짜 일련 번호 값은 MATLAB 날짜 일련 번호 값과는 다른 기준 날짜를 사용합니다. Excel 날짜에 대한 자세한 내용은 Differences between the 1900 and the 1904 date system in Excel을 참조하십시오. |
가져오는 기간 데이터의 유형으로, 다음 표에 있는 값 중 하나로 지정됩니다.
| 값 | 결과 데이터형 |
|---|---|
"duration" | MATLAB |
"text" | 데이터형은
|
가져오는 16진수 데이터의 유형으로, 다음 표에 있는 값 중 하나로 지정됩니다.
값 | 결과 데이터형 |
|---|---|
| 감지된 데이터형으로, |
| 변경되지 않은 입력 텍스트 |
| 8비트 정수, 부호 있음 |
| 16비트 정수, 부호 있음 |
| 32비트 정수, 부호 있음 |
| 64비트 정수, 부호 있음 |
| 8비트 정수, 부호 없음 |
| 16비트 정수, 부호 없음 |
| 32비트 정수, 부호 없음 |
| 64비트 정수, 부호 없음 |
입력 파일은 0x 또는 0X를 접두사로 사용하고 문자 0-9, a-f, A-F를 숫자로 사용하여 16진수 값을 텍스트로 나타낼 수 있습니다. 대문자와 소문자는 동일한 숫자를 나타냅니다. 예를 들어 "0xf"와 "0xF"는 모두 15를 나타냅니다.
가져오는 이진 데이터의 유형으로, 다음 표에 있는 값 중 하나로 지정됩니다.
값 | 결과 데이터형 |
|---|---|
| 감지된 데이터형으로, |
| 변경되지 않은 입력 텍스트 |
| 8비트 정수, 부호 있음 |
| 16비트 정수, 부호 있음 |
| 32비트 정수, 부호 있음 |
| 64비트 정수, 부호 있음 |
| 8비트 정수, 부호 없음 |
| 16비트 정수, 부호 없음 |
| 32비트 정수, 부호 없음 |
| 64비트 정수, 부호 없음 |
입력 파일은 0b 또는 0B를 접두사로 사용하고 문자 0 및 1을 숫자로 사용하여 이진 값을 텍스트로 나타낼 수 있습니다. 예를 들어, 0b11111111은 255를 나타냅니다.
날짜 읽기에 적용할 로캘로, 형식의 string형 스칼라 또는 문자형 벡터로 지정됩니다. 여기서,xx_YY
xx는 언어를 지정하는 ISO 639-1 두 자리 코드(소문자)입니다.YY는 국가를 지정하는 ISO 3166-1 alpha-2 코드(대문자)입니다.
detectImportOptions가 어떤 로캘을 사용해 월 이름, 요일 이름, 약어를 해석할지 지정하려면 DateLocale을 사용하십시오.
다음 표에는 로캘에 일반적으로 사용되는 일부 값이 나와 있습니다.
| 로캘 | 언어 | 국가 |
|---|---|---|
"de_DE" | 독일어 | 독일 |
"en_GB" | 영어 | 영국 |
"en_US" | 영어 | 미국 |
"es_ES" | 스페인어 | 스페인 |
"fr_FR" | 프랑스어 | 프랑스 |
"it_IT" | 이탈리아어 | 이탈리아 |
"ja_JP" | 일본어 | 일본 |
"ko_KR" | 한국어 | 한국 |
"nl_NL" | 네덜란드어 | 네덜란드 |
"zh_CN" | 중국어(간체) | 중국 |
숫자형 변수에서 숫자형이 아닌 문자를 제거할지 여부로, 숫자형 값 또는 논리값 1(true) 또는 0(false)으로 지정됩니다. 예를 들어, TrimNonNumeric이 true인 경우 detectImportOptions는 "$500/-"를 500으로 감지합니다.
숫자형 변수의 소수점 구분 기호 문자로, string형 스칼라 또는 단일 문자로 구성된 문자형 벡터로 지정됩니다. 구분 기호 문자는 숫자의 정수부와 소수부를 구별합니다. 예를 들어, 구분 기호가 ","이면 detectImportOptions는 텍스트 "3,14159"를 숫자 3.14159로 감지합니다.
정수 데이터형으로 변환할 때 detectImportOptions는 소수부 숫자를 가장 가까운 정수로 반올림합니다. DecimalSeparator는 숫자를 값으로 허용하지 않습니다.
숫자형 변수의 천 단위 구분 문자로, string형 스칼라 또는 문자형 벡터로 지정됩니다. 이 구분 문자는 매 세 자리값에서 숫자를 분류하는 시각적 구분 기호로 동작합니다. 예를 들어, 구분 문자가 ","이면 detectImportOptions는 텍스트 "1,234,000"을 1234000으로 감지합니다.
지수 문자로, string형 스칼라 또는 문자형 벡터로 지정됩니다. 디폴트 지수 문자는 e, E, d, D입니다.
예: "eE"
데이터 정리
누락값으로 처리할 자리 표시자 텍스트로, string형 배열, 문자형 벡터 또는 문자형 벡터로 구성된 셀형 배열로 지정됩니다. detectImportOptions는 이 자리 표시자 텍스트에 해당하는 테이블 요소를 해당 요소의 데이터형에 따른 누락값으로 감지합니다.
예: "N/A"
예: [".","NA","N/A"]
가져오기 오류에 대한 규칙으로, 다음 표에 있는 값 중 하나로 지정됩니다. detectImportOptions가 텍스트 요소를 예상했던 데이터형으로 변환할 수 없는 경우 가져오기 오류가 발생합니다.
| 가져오기 오류 규칙 | 동작 |
|---|---|
"fill" | 오류가 발생한 데이터를 가져올 변수의 |
"error" | 오류 메시지를 표시하고 가져오기 작업을 취소합니다. |
"omitrow" | 오류가 발생한 행을 생략합니다. |
"omitvar" | 오류가 발생한 변수를 생략합니다. |
누락된 데이터에 대한 규칙으로, 다음 표에 있는 값 중 하나로 지정됩니다.
| 누락 규칙 | 동작 |
|---|---|
"fill" | 누락된 데이터를 가져올 변수의 |
"error" | 오류 메시지를 표시하고 가져오기 작업을 취소합니다. |
"omitrow" | 누락된 데이터가 포함된 행을 생략합니다. |
"omitvar" | 누락된 데이터가 포함된 변수를 생략합니다. |
텍스트 파일, Microsoft Word, HTML 파일의 경우, 예상한 필드가 행에 없으면 데이터가 누락된 것으로 간주됩니다. 필드가 누락되면 행의 후속 요소에 의해 필드가 앞으로 밀리게 되며, 누락된 필드는 행의 끝부분에서 해석됩니다.
스프레드시트 파일의 경우, 행의 예상되는 필드에 데이터가 없고 필드 유형이 공백이거나 비어 있으면 데이터가 누락된 것으로 간주됩니다.
JSON 파일과 XML 파일의 경우, 예상한 노드가 없으면 데이터가 누락된 것으로 간주됩니다.
데이터의 추가 열에 대한 규칙으로, 다음 표에 있는 값 중 하나로 지정됩니다. 하나의 행에 예상 개수보다 많은 열이 있는 경우 detectImportOptions는 해당 열을 추가 열로 간주합니다.
| 추가 열 규칙 | 동작 |
|---|---|
"addvars" | 추가 열을 가져오기 위해 새 변수를 생성합니다.
|
"ignore" | 데이터의 추가 열을 무시합니다. |
"wrap" | 새 레코드로 데이터의 추가 열을 줄 바꿈합니다. 이 동작을 수행해도 변수의 개수는 변경되지 않습니다. |
"error" | 오류 메시지를 표시하고 가져오기 작업을 취소합니다. |
데이터의 빈 라인에 대한 규칙으로, 다음 표에 있는 값 중 하나로 지정됩니다. 라인에 공백 문자만 포함된 경우 detectImportOptions는 해당 라인이 비어 있는 것으로 간주합니다.
| 빈 라인 규칙 | 동작 |
|---|---|
"skip" | 빈 라인을 건너뜁니다. |
"read" | 빈 라인을 가져옵니다. detectImportOptions는 VariableWidths, VariableOptions, MissingRule과 기타 관련 인수(예: Whitespace)에 지정된 값을 사용하여 빈 라인을 구문 분석합니다. |
"error" | 오류 메시지를 표시하고 가져오기 작업을 취소합니다. |
데이터의 빈 행에 대한 규칙으로, 다음 표에 있는 값 중 하나로 지정됩니다.
| 빈 라인 규칙 | 동작 |
|---|---|
"skip" | 빈 행을 건너뜁니다. |
"read" | 빈 행을 가져옵니다. detectImportOptions는 VariableWidths, VariableOptions, MissingRule과 기타 관련 인수(예: Whitespace)에 지정된 값을 사용하여 빈 행을 구문 분석합니다. |
"error" | 오류 메시지를 표시하고 가져오기 작업을 취소합니다. |
데이터의 빈 열에 대한 규칙으로, 다음 표에 있는 값 중 하나로 지정됩니다.
| 빈 열 규칙 | 동작 |
|---|---|
"skip" | 빈 열을 건너뜁니다. |
"read" | 빈 열을 가져옵니다. detectImportOptions는 VariableWidths, VariableOptions, MissingRule과 기타 관련 인수(예: Whitespace)에 지정된 값을 사용하여 빈 열을 구문 분석합니다. |
"error" | 오류 메시지를 표시하고 가져오기 작업을 취소합니다. |
데이터의 부분 필드에 대한 규칙으로, 다음 표에 있는 값 중 하나로 지정됩니다. 필드가 예상된 너비보다 적은 문자 수로 라인 끝에 도달하는 경우 detectImportOptions는 해당 필드가 부분적으로 채워진 것으로 간주합니다. 이 이름-값 인수는 고정 너비를 갖는 필드에만 적용됩니다.
| 부분 필드 규칙 | 동작 |
|---|---|
"keep" | 부분 필드 데이터를 유지하고 텍스트를 적절한 데이터형으로 변환합니다.
|
"fill" | 누락된 데이터를 가져올 변수의 |
"omitrow" | 부분 데이터가 들어 있는 행을 생략합니다. |
"omitvar" | 부분 데이터가 들어 있는 변수를 생략합니다. |
"wrap" | 다음 문자 라인을 읽습니다. |
"error" | 오류 메시지를 표시하고 가져오기 작업을 취소합니다. |
파일 정보
파일 형식으로, 다음 표에 있는 값 중 하나로 지정됩니다.
| 값 | 파일 형식 |
|---|---|
"spreadsheet" | 스프레드시트 파일 |
"text" | 텍스트 파일 |
"delimitedtext" | 구분된 텍스트 파일 |
"fixedwidth" | 고정 너비 텍스트 파일 |
"json" | JSON 파일 |
"xml" | XML 파일 |
"worddocument" | Microsoft Word 문서 |
"html" | HTML 파일 |
filename에 파일 확장자가 포함되어 있지 않거나 확장자가 다음 목록에 없는 경우 다음 이름-값 인수를 지정하십시오.
.txt,.dat,.csv- 텍스트 파일.xls,.xlsb,.xlsm,.xlsx,.xltm,.xltx,.ods- 스프레드시트 파일.json- JSON 파일.xml- XML 파일.docx- Microsoft Word 문서.html,.xhtml또는.htm- HTML 파일
파일과 연결된 문자 인코딩 체계로, "system" 또는 표준 문자 인코딩 체계 이름으로 지정됩니다. 인코딩을 지정하지 않은 경우 detectImportOptions는 파일을 읽어올 때 문자 집합을 자동으로 감지하여 인코딩을 결정합니다.
R2022a 이후
HTTP 또는 HTTPS 요청 옵션으로, weboptions 객체로 지정됩니다. weboptions 객체는 지정된 filename이 프로토콜 유형 "http://" 또는 "https://"를 포함하는 인터넷 URL일 때 데이터를 어떻게 가져올지를 결정합니다.
텍스트 구문 분석
필드 구분 기호 문자로, string형 배열, 문자형 벡터 또는 문자형 벡터로 구성된 셀형 배열로 지정됩니다. 쉼표 "," 또는 마침표 "." 같은 유효한 문자로 Delimiter를 지정합니다.
아래 표에는 일반적으로 사용되는 필드 구분 기호 문자가 일부 나열되어 있습니다.
지정자 | 필드 구분 기호 |
|---|---|
| 쉼표 |
| 공백 |
| 탭 |
| 세미콜론 |
| 세로 막대 |
| 지정되지 않음 | 이 이름-값 인수를 지정하지 않으면 |
여러 문자를 단일 구분 기호로 처리하려면 Delimiter를 string형 배열 또는 문자형 벡터로 구성된 셀형 배열로 지정하십시오. 알 수 없는 개수의 연속된 구분 기호를 하나로 처리하려면 ConsecutiveDelimitersRule="join"을 지정하십시오.
Delimiter는 구분된 텍스트 파일에만 유효하며 고정 너비 텍스트 파일에는 유효하지 않습니다.
라인 끝(EOL) 문자로, string형 배열, 문자형 벡터 또는 문자형 벡터로 구성된 셀형 배열로 지정됩니다. 일반적인 라인 끝(EOL) 문자로는 새 줄(Newline) 문자("\n")와 캐리지 리턴("\r")이 있습니다. "\r\n"을 지정할 경우 detectImportOptions는 이 둘의 조합(\r\n)을 라인 끝(EOL) 문자로 처리합니다. {"\r\n", "\r", "\n"}을 지정할 경우 \r, \n, \r\n은 모두 라인 끝(EOL) 문자로 취급됩니다.
디폴트 라인 끝(EOL) 시퀀스는 파일의 내용에 따라 \n, \r, \r\n 중 하나입니다.
공백으로 처리할 문자로, 하나 이상의 문자를 포함하는 string형 스칼라 또는 문자형 벡터로 지정됩니다.
다음 표에는 일반 텍스트를 사용하여 입력할 수 없는 특수 문자를 표현하는 방법이 나와 있습니다.
특수 문자 | 표현 |
|---|---|
백분율 |
|
백슬래시 |
|
경보 |
|
백스페이스 |
|
폼 피드(FF) |
|
새 줄(Newline) |
|
캐리지 리턴 |
|
가로 탭 |
|
세로 탭 |
|
그 Unicode® 숫자형 값을 16진수 |
|
그 Unicode 숫자형 값을 8진수 |
|
예: " _"
예: "?!.,"
무시할 텍스트에 대한 주석 표시자로, string형 배열, 문자형 벡터 또는 문자형 벡터로 구성된 셀형 배열로 지정됩니다.
예를 들어, "%"와 같은 문자를 지정하여 동일한 라인에서 그 문자 다음의 텍스트를 무시할 수 있습니다. ["/*","*/"]와 같은 string형 배열을 지정하여 시퀀스 사이의 모든 텍스트를 무시할 수 있습니다.
detectImportOptions는 라인 내부가 아니라 각 라인의 시작 부분에서만 주석을 확인합니다.
예: ["/*","*/"]
구분된 텍스트 파일의 선행 구분 기호에 대한 규칙으로, 다음 표에 있는 값 중 하나로 지정됩니다.
| 규칙 | 동작 |
|---|---|
"keep" | 구분 기호를 유지합니다. |
"ignore" | 구분 기호를 무시합니다. |
"error" | 오류 메시지를 표시하고 가져오기 작업을 취소합니다. |
구분된 텍스트 파일의 후행 구분 기호에 대한 규칙으로, 다음 표에 있는 값 중 하나로 지정됩니다.
| 규칙 | 동작 |
|---|---|
"keep" | 구분 기호를 유지합니다. |
"ignore" | 구분 기호를 무시합니다. |
"error" | 오류 메시지를 표시하고 가져오기 작업을 취소합니다. |
구분된 텍스트 파일의 연속된 구분 기호에 대한 규칙으로, 다음 표에 있는 값 중 하나로 지정됩니다.
| 규칙 | 동작 |
|---|---|
"split" | 연속된 구분 기호를 여러 개의 필드로 분할합니다. |
"join" | 여러 구분 기호를 하나의 구분 기호로 결합합니다. |
"error" | 오류 메시지를 표시하고 가져오기 작업을 취소합니다. |
여러 구분 기호를 하나로 처리할지 여부로, 숫자형 값 또는 논리값 1(true) 또는 0(false)으로 지정됩니다.
고정 너비 텍스트 파일의 변수 필드 너비로, 양의 정수로 구성된 벡터로 지정됩니다. 각각의 정수는 변수를 만드는 필드의 문자 수에 해당합니다.
예: [10,7,4,26,7]
JSON 및 XML 구문 분석
R2026a 이후
구문 분석 시 JSON 표준을 얼마나 엄격하게 따를지 여부로, 다음 값 중 하나로 지정됩니다.
"lenient"–AllowComments,AllowInfAndNaN,AllowTrailingCommas의 값이true로 설정됩니다."strict"–AllowComments,AllowInfAndNaN,AllowTrailingCommas의 값이false로 설정됩니다.
R2026a 이후
입력 파일에서의 주석 허용 여부로, 다음 값 중 하나로 지정됩니다.
숫자형 또는 논리형
1(true) – 가져오는 동안 주석이 오류를 일으키지 않습니다. 파일의 주석은 데이터로 간주되지 않으며 MATLAB으로 읽어오지 않습니다. 주석은 한 줄 주석의 경우 "//"로 시작하거나, 여러 줄 주석의 경우 "/*"로 시작하여 "*/"로 끝날 수 있습니다.숫자형 또는 논리형
0(false) – 가져오는 동안 주석이 오류를 일으킵니다.
R2026a 이후
입력 파일에서 Inf 값과 NaN 값을 읽어 들일지 여부로, 다음 값 중 하나로 지정됩니다.
숫자형 또는 논리형
1(true) –Inf값과NaN값(Infinity,-Inf,-Infinity포함)을 MATLAB으로 읽어 들입니다.숫자형 또는 논리형
0(false) – 가져오는 동안Inf값과NaN값이 오류를 일으킵니다.
R2026a 이후
후행 쉼표를 읽어 들일지 여부로, 다음 값 중 하나로 지정됩니다.
숫자형 또는 논리형
1(true) – 가져오는 동안 JSON 배열 또는 JSON 객체 뒤의 후행 쉼표가 오류를 일으키지 않습니다.숫자형 또는 논리형
0(false) – 가져오는 동안 후행 쉼표가 오류를 일으킵니다.
테이블의 주어진 행에서 반복되는 JSON (R2026a 이후) 노드 또는 XML 노드에 대한 규칙으로, 다음 표에 있는 값 중 하나로 지정됩니다. JSON 파일의 경우, VariableSelectors 이름-값 인수에 배열을 가리키는 JSON 포인터가 포함된 경우 이 규칙이 적용됩니다. 배열 항목은 반복되는 노드로 간주됩니다.
규칙 | 동작 |
|---|---|
"addcol" | 변수에서 반복되는 각 노드에 대해 열을 추가하여 연관된 변수에 행렬을 만듭니다. 예를 들어, 다음과 같습니다. 입력 XML 데이터 <table>
<row>
<Var1>1</Var1>
<Var2>2</Var2>
<Var3>3</Var3>
<Var1>11</Var1>
<Var1>111</Var1>
</row>
<row>
<Var1>4</Var1>
<Var2>5</Var2>
<Var3>6</Var3>
</row>
<row>
<Var1>7</Var1>
<Var2>8</Var2>
<Var3>9</Var3>
</row>
</table>출력 테이블 Var1 Var2 Var3
_______________ ____ ____
1 11 111 2 3
4 NaN NaN 5 6
7 NaN NaN 8 9 |
"ignore" | 반복되는 노드를 건너뜁니다. |
"error" | 오류 메시지를 표시하고 가져오기 작업을 취소합니다. |
XML 특성을 출력 테이블의 변수로 가져올지 여부로, 숫자형 값 또는 논리값 1(true) 또는 0(false)으로 지정됩니다. 기본적으로 detectImportOptions는 XML 특성을 출력 테이블의 변수로 감지합니다.
특성과 출력 테이블의 요소를 구분하는 데 사용되는 접미사로, string형 스칼라 또는 문자형 벡터로 지정됩니다. 이 인수는 detectImportOptions가 입력 XML 파일의 특성에 대응하는 모든 테이블 변수에 추가하는 접미사를 지정합니다. AttributeSuffix를 지정하지 않으면 detectImportOptions는 입력 XML 파일의 특성에 대응하는 모든 변수 이름에 접미사 "Attribute"를 추가합니다.
예: "_att"
등록된 XML 네임스페이스 접두사 집합으로, 접두사 및 관련 URL로 구성된 N×2 string형 배열로 지정됩니다. detectImportOptions는 XML 파일에서 XPath 표현식을 실행할 때 이러한 접두사를 사용합니다.
VariableSelectors와 같이 선택자 이름-값 인수로 지정된 XPath 표현식을 실행할 때 RegisteredNamespaces를 사용할 수 있습니다.
기본적으로 detectImportOptions는 XPath 실행에 사용할 네임스페이스 접두사를 자동으로 감지합니다. 선언되지 않은 네임스페이스 접두사를 갖는 XML 노드를 선택하려면 RegisteredNamespaces 이름-값 인수를 사용하여 네임스페이스 접두사에 대한 사용자 지정 네임스페이스 URL을 등록하십시오. 예를 들어, 네임스페이스 접두사가 포함되지 않은 XML 파일에서 URL https://www.mathworks.com에 접두사 myprefix를 할당해 보겠습니다.
T = detectImportOptions(filename,VariableSelectors="/myprefix:Data", ... RegisteredNamespaces=["myprefix","https://www.mathworks.com"])
변수 메타데이터
변수 단위의 위치로, 음이 아닌 정수로 지정됩니다.
VariableUnitsLine이 0이면 detectImportOptions는 변수 단위를 감지하지 않습니다. 그렇지 않은 경우, detectImportOptions는 지정된 라인에서 변수 단위를 감지합니다.
데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
변수 단위의 위치로, 다음 형식을 사용하여 string형 스칼라, 문자형 벡터 또는 양의 정수로 지정됩니다.
VariableUnitsRange를 지정하는 방법 | 설명 |
|---|---|
시작 셀 | A1 표기법을 사용하여, 변수 단의의 시작 셀을 열 문자와 행 번호를 포함하는 string형 스칼라나 문자형 벡터로 지정합니다.
예: |
사각 범위 |
범위는 한 행으로만 이루어져야 합니다. 예: |
숫자 인덱스 | 양의 행 인덱스를 사용하여 변수 단위를 포함하는 행을 지정합니다. 예: |
행 범위 |
변수 단위는 하나의 행에 있어야 합니다. 예: |
지정되지 않거나 비어 있음 | 변수 단위가 없음을 나타냅니다. 예: |
데이터형: string | char | single | double
변수 단위의 위치로, 음이 아닌 정수로 지정됩니다.
VariableUnitsRow가 0이면 detectImportOptions는 변수 단위를 감지하지 않습니다. 그렇지 않은 경우, detectImportOptions는 지정된 행에서 변수 단위를 감지합니다.
데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
변수 단위로, string형 스칼라 또는 문자형 벡터로 지정됩니다. 이 이름-값 인수를 지정하지 않으면 detectImportOptions는 변수 단위를 가져오지 않습니다.
JSON 파일
(R2026a 이후)
변수 단위를 JSON 포인터를 포함하는 string형 스칼라 또는 문자형 벡터로 지정합니다. VariableUnitsSelector를 유효한 RFC 6901 JSON 포인터로 지정해야 합니다. 자세한 내용은 IETF definition of JSON Pointer 항목을 참조하십시오.
예: VariableUnitsSelector="/statuses/metadata/units"
XML 파일
변수 단위를 XPath 표현식을 포함하는 string형 스칼라 또는 문자형 벡터로 지정합니다. 유효한 XPath 버전 1.0 표현식으로 VariableUnitsSelector를 지정해야 합니다.
예: VariableUnitsSelector="/RootNode/ChildNode"
예: VariableUnitsSelector="//table[1]/units/"
변수 설명의 위치로, 음이 아닌 정수로 지정됩니다.
VariableDescriptionsLine이 0이면 detectImportOptions는 변수 설명을 감지하지 않습니다. 그렇지 않은 경우, detectImportOptions는 지정된 라인에서 변수 설명을 감지합니다.
데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
변수 설명의 위치로, 다음 형식을 사용하여 string형 스칼라, 문자형 벡터 또는 양의 정수로 지정됩니다.
VariableDescriptionsRange를 지정하는 방법 | 설명 |
|---|---|
시작 셀 | A1 표기법을 사용하여, 변수 설명의 시작 셀을 열 문자와 행 번호를 포함하는 string형 스칼라나 문자형 벡터로 지정합니다.
예: |
사각 범위 |
범위는 한 행으로만 이루어져야 합니다. 예: |
행 범위 |
변수 설명은 하나의 행에 있어야 합니다. 예: |
숫자 인덱스 | 양의 행 인덱스를 사용하여 설명을 포함하는 행을 지정합니다. 예: |
지정되지 않거나 비어 있음 | 변수 설명이 없음을 나타냅니다. 예: |
데이터형: string | char | single | double
변수 설명의 위치로, 음이 아닌 정수로 지정됩니다.
VariableDescriptionsRow가 0이면 detectImportOptions는 변수 설명을 감지하지 않습니다. 그렇지 않은 경우, detectImportOptions는 지정된 행에서 변수 설명을 감지합니다.
데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
변수 설명으로, string형 스칼라 또는 문자형 벡터로 지정됩니다. 이 이름-값 인수를 지정하지 않으면 detectImportOptions는 변수 설명을 가져오지 않습니다.
JSON 파일
(R2026a 이후)
변수 설명을 JSON 포인터를 포함하는 string형 스칼라 또는 문자형 벡터로 지정합니다. VariableDescriptionsSelector를 유효한 RFC 6901 JSON 포인터로 지정해야 합니다. 자세한 내용은 IETF definition of JSON Pointer 항목을 참조하십시오.
예: VariableDescriptionsSelector="/statuses/metadata"
XML 파일
변수 설명을 XPath 표현식을 포함하는 string형 스칼라 또는 문자형 벡터로 지정합니다. 유효한 XPath 버전 1.0 표현식으로 VariableDescriptionsSelector를 지정해야 합니다.
예: VariableDescriptionsSelector="/RootNode/RowNode/@Name"
예: VariableDescriptionsSelector="//table[1]/descriptions/*"
출력 인수
지정된 파일에 대한 가져오기 옵션으로, SpreadsheetImportOptions 객체, DelimitedTextImportOptions 객체, FixedWidthImportOptions 객체, JSONImportOptions 객체 또는 XMLImportOptions 객체로 반환됩니다. options 객체 유형은 지정된 파일 형식에 따라 달라집니다.
텍스트 파일(
.txt,.dat,.csv)의 경우 함수는DelimitedTextImportOptions객체나FixedWidthImportOptions객체를 반환합니다.스프레드시트 파일(
.xls,.xlsb,.xlsm,.xlsx,.xltm,.xltx,.ods)의 경우 함수는SpreadsheetImportOptions객체를 반환합니다.JSON 파일(
.json)의 경우 함수는JSONImportOptions객체를 반환합니다.XML 파일(
.xml)의 경우 함수는XMLImportOptions객체를 반환합니다.
팁
import options 객체를 만든 후 속성값 업데이트하기:
detectImportOptions로 만든 import options 객체의 속성을 업데이트할 때 점 표기법을 사용하는 것은 권장되지 않습니다. 점 표기법을 사용하여 속성을 설정하면 MATLAB이 파일의 import options 중 일부를 재감지하지 못할 수 있습니다. 따라서 모든 속성을 업데이트하고 재감지하려면 이름-값 인수를 사용하여 새 값을 지정해야 합니다. 예를 들어,ConsecutiveDelimitersRule속성의 값을 업데이트하고 import options를 재감지하려면 다음과 같이 하십시오.opts = detectImportOptions(__,'ConsecutiveDelimitersRule','join')
XPath 선택기를 사용하여 XML 입력 문서의 어느 요소를 가져올지 지정합니다. 예를 들어, 다음의 구조를 갖는 XML 파일
myFile.xml을 가져오고자 한다고 가정하겠습니다.이 테이블은 XPath 선택기 이름-값 인수(예:<data> <table category="ones"> <var>1</var> <var>2</var> </table> <table category="tens"> <var>10</var> <var>20</var> </table> </data>VariableSelectors또는TableSelector)에 지원되는 XPath 구문을 제공합니다.선택 작업 구문 예 결과 문서에서의 위치에 관계없이 선택하려는 노드와 이름이 일치하는 모든 노드를 선택합니다. 이름 앞에 두 개의 슬래시( //)를 붙입니다.data = readtable('myFile.xml', 'VariableSelectors', '//var')
data = 4×1 table var ___ 1 2 10 20요소 노드에 속한 특성 값을 읽어 들입니다. 특성 앞에 골뱅이 기호( @)를 붙입니다.data = readtable('myFile.xml', 'VariableSelectors', '//table/@category')
data = 2×1 table categoryAttribute _________________ "ones" "tens"노드 세트에서 특정 노드를 선택합니다. 대괄호( []) 안에 선택하고자 하는 노드 인덱스를 제공합니다.data = readtable('myFile.xml', 'TableSelector', '//table[1]')
data = 2×1 table var ___ 1 2연산 우선 순위를 지정합니다. 먼저 평가할 표현식을 괄호로 묶습니다. data = readtable('myFile.xml', 'VariableSelectors', '//table/var[1]')
data = 2×1 table var ___ 1 10data = readtable('myFile.xml', 'VariableSelectors', '(//table/var)[1]')
data = table var ___ 1
버전 내역
R2016b에 개발됨JSON 파일에 대한 가져오기 옵션을 감지할 수 있습니다. 가져오기 동작을 제어하려면 선택적 이름-값 인수를 지정합니다. 예를 들어, 입력 JSON 파일에 주석이 있을 경우 가져오는 동안 오류를 일으키게 하려면 AllowComments를 false로 설정합니다.
압축된 파일과 아카이브된 파일에서 데이터를 테이블로 읽어올 수 있습니다.
스프레드시트에서 데이터를 가져올 때 detectImportOptions가 MergedCellRowRule과 MergedCellColumnRule 이름-값 인수를 사용하여 행과 열을 가로질러 병합된 셀을 가져오는 방법을 지정할 수 있습니다.
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
웹사이트 선택
번역된 콘텐츠를 보고 지역별 이벤트와 혜택을 살펴보려면 웹사이트를 선택하십시오. 현재 계신 지역에 따라 다음 웹사이트를 권장합니다:
또한 다음 목록에서 웹사이트를 선택하실 수도 있습니다.
사이트 성능 최적화 방법
최고의 사이트 성능을 위해 중국 사이트(중국어 또는 영어)를 선택하십시오. 현재 계신 지역에서는 다른 국가의 MathWorks 사이트 방문이 최적화되지 않았습니다.
미주
- América Latina (Español)
- Canada (English)
- United States (English)
유럽
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)