load: 파일의 변수를 작업 공간(Workspace)으로 로드
구문
load(filename)load(filename,variables)load(filename,'-ascii')load(filename,'-mat')load(filename,'-mat',variables)S = load(___)load filename설명
load(은 filename)filename에서 데이터를 로드합니다.
filename이 MAT 파일인 경우load(filename)은 MAT 파일의 변수를 MATLAB® 작업 공간으로 로드합니다.filename이 ASCII 파일이면load(filename)은 파일의 데이터를 포함하는 배정밀도 배열을 만듭니다.
load(는 파일 확장자에 관계없이 filename,'-mat')filename을 MAT 파일로 처리합니다.
load 은 명령 형식의 구문입니다. 명령 형식에는 특수 문자가 더 적게 필요합니다. 괄호를 입력하거나 입력값을 작은따옴표 또는 큰따옴표로 묶을 필요가 없습니다. 입력값은 쉼표 대신 공백을 사용하여 분리합니다. filename
예를 들어, durer.mat라는 파일을 로드할 경우 다음 명령문은 동일합니다.
load durer.mat % command form load('durer.mat') % function form
위에 열거된 구문의 입력값 중 어느 것이든 포함시킬 수 있습니다. 예를 들어, 변수 X를 로드하기 위해 다음 구문을 사용할 수 있습니다.
load durer.mat X % command form load('durer.mat','X') % function form
filename 등 입력값 중 변수가 하나라도 있는 경우에는 명령 형식을 사용하지 마십시오.
예제
MAT 파일에서 모든 변수 로드
예제 MAT 파일 gong.mat에서 모든 변수를 로드합니다. 로드 작업 전과 후의 작업 공간 내용을 확인합니다.
disp('Contents of workspace before loading file:') whos disp('Contents of gong.mat:') whos('-file','gong.mat') load('gong.mat') disp('Contents of workspace after loading file:') whos
명령 구문을 사용하여 변수를 로드할 수도 있습니다. 이전에 로드된 변수를 지우고 load 작업을 다시 실행합니다.
clear y Fs load gong.mat
MAT 파일에서 특정 변수 로드
예제 파일 handel.mat에서 변수 y만 로드합니다. 작업 공간에 변수 y가 이미 포함되어 있는 경우 load 작업은 이 변수를 파일의 데이터로 덮어씁니다.
load('handel.mat','y')
명령 구문을 사용하여 변수 y를 로드할 수도 있습니다.
load handel.mat y
정규 표현식을 사용하여 특정 변수 로드
예제 파일 accidents.mat의 내용을 확인합니다.
whos -file accidents.mat
Name Size Bytes Class Attributes datasources 3x1 2724 cell hwycols 1x1 8 double hwydata 51x17 6936 double hwyheaders 1x17 2758 cell hwyidx 51x1 408 double hwyrows 1x1 8 double statelabel 51x1 6596 cell ushwydata 1x17 136 double uslabel 1x1 138 cell
함수 구문을 사용하여 파일에서 이름이 'hwy'로 시작하지 않는 변수를 모두 로드합니다.
load('accidents.mat', '-regexp', '^(?!hwy)...')
또는 명령 구문을 사용하여 동일한 변수를 로드합니다.
load accidents.mat -regexp '^(?!hwy)...'
변수 목록을 구조체형 배열로 로드
파일 durer.mat에는 변수 X, caption 및 map이 들어 있습니다. 로드할 변수 이름으로 구성된 셀형 배열을 만듭니다.
filename = 'durer.mat'; myVars = {'X','caption'}; S = load(filename,myVars{:})
S = struct with fields:
X: [648×509 double]
caption: [2×28 char]
변수 X와 caption만 구조체형 배열 S로 로드됩니다.
ASCII 파일 로드
여러 개의 4열 행렬에서 ASCII 파일을 만들고 데이터를 다시 배정밀도 배열로 로드합니다.
a = magic(4); b = ones(2, 4) * -5.7; c = [8 6 4 2]; save -ascii mydata.dat a b c clear a b c load mydata.dat -ascii
load는 mydata라는 double형으로 구성된 배열을 만듭니다.
mydata에 대한 정보를 확인합니다.
whos mydataName Size Bytes Class Attributes mydata 7x4 224 double
입력 인수
filename — 파일의 이름
matlab.mat (디폴트 값) | 문자형 벡터 | string형
파일의 이름으로, 문자형 벡터나 string형으로 지정됩니다. filename을 지정하지 않을 경우 load 함수는 matlab.mat라는 파일을 검색합니다.
filename은 파일 확장자와 전체 경로 또는 부분 경로를 포함할 수 있습니다. filename에 확장자가 없으면(즉, 마침표 뒤에 텍스트가 없음) load는 filename.mat라는 파일을 찾습니다. filename에 .mat 이외의 확장자가 있으면 load 함수는 파일을 ASCII 데이터로 처리합니다.
명령 형식의 load를 사용할 경우 입력값을 작은따옴표 또는 큰따옴표로 묶을 필요가 없습니다. 그러나 filename에 공백이 포함된 경우에는 인수를 작은따옴표로 묶어야 합니다. 예를 들면 load 'filename
withspace.mat'과 같습니다.
ASCII 파일에는, 각 행의 요소 개수가 동일하며 숫자로 구성된, 사각형 테이블이 포함되어야 합니다. 파일 구분 기호(각
행에 포함된 요소 사이의 문자)는 공백, 쉼표, 세미콜론, 탭 문자 중 하나일 수 있습니다. 파일에는 MATLAB 주석(퍼센트
기호 %로 시작하는 라인)이 포함될 수 있습니다.
예: 'myFile.mat'
데이터형: char | string
variables — 로드할 변수의 이름
문자형 벡터 | string형
로드할 변수의 이름으로, 하나 이상의 문자형 벡터 또는 문자열로 지정됩니다. 명령 형식의 load를 사용할 경우 입력값을 작은따옴표 또는 큰따옴표로 묶을 필요가 없습니다. variables는 다음 형식 중 하나일 수 있습니다.
variables 입력값의 형식 | 로드할 변수 |
|---|---|
var1,...,varN | 나열된 변수를 로드하며, 개별 문자형 벡터 또는 string형으로 지정됩니다.'*' 와일드카드를 사용하여 패턴을 일치시킬 수 있습니다. 예를 들어, load('filename.mat','A*') 또는 load
filename.mat A*는 파일에서 이름이 A로 시작하는 변수를 모두 로드합니다. |
'-regexp', | 이름이 정규 표현식과 일치하는 변수 또는 필드만 로드하며, 문자형 벡터 또는 문자열로 지정됩니다. 예를 들어, load('filename.mat','-regexp','^Mon','^Tues') 또는 load
filename.mat -regexp ^Mon ^Tues는 파일에서 이름이 Mon이나 Tues로 시작하는 변수만 로드합니다. |
데이터형: char | string
출력 인수
S — 로드된 변수(Loaded Variable) 또는 데이터
구조체형 배열 | mxn 배열
filename이 MAT 파일인 경우 변수가 로드되며, 구조체형 배열로 반환됩니다.
filename이 ASCII 파일인 경우 데이터가 로드되며, double형의 mxn 배열로 반환됩니다. m은 파일의 라인 개수와 동일하며, n은 라인 하나에 포함된 값의 개수와 동일합니다.
알고리즘
load 함수에 대한 출력값을 지정하지 않을 경우 MATLAB은 로드된 파일의 이름(파일 확장자 제외)을 따서 명명된 변수를 만듭니다. 예를 들어, 다음 명령은
load mydata.dat
데이터를 mydata라는 변수로 읽어옵니다.
변수 이름을 만들기 위해 load는 filename의 맨 앞에 있는 밑줄이나 숫자 앞에 X를 붙이고 영문자가 아닌 다른 문자를 밑줄로 바꿉니다. 예를 들어, 다음 명령은
load 10-May-data.dat
X10_May_data라는 변수를 만듭니다.
importdata: 파일에서 데이터 로드 (ASCII 뿐만 아니라 binary도)
구문
A = importdata(filename)A = importdata('-pastespecial')A = importdata(___,delimiterIn)A = importdata(___,delimiterIn,headerlinesIn)[A,delimiterOut,headerlinesOut]
= importdata(___)설명
은 A = importdata(___,delimiterIn)delimiterIn을 ASCII 파일 filename 또는 클립보드 데이터의 열 구분 기호로 해석합니다. delimiterIn은 위 구문의 입력 인수와 함께 사용할 수 있습니다.
은 A = importdata(___,delimiterIn,headerlinesIn)headerlinesIn+1 라인부터 시작하여 숫자형 데이터를 읽어 ASCII 파일 filename 또는 클립보드에서 데이터를 로드합니다.
[는 위에 열거된 구문을 사용하여, 입력 ASCII 파일에서 감지된 구분 기호 문자는 A,delimiterOut,headerlinesOut]
= importdata(___)delimiterOut에, 감지된 헤더 라인의 수는 headerlinesOut에 반환합니다.
예제
이미지 가져오기 및 표시
샘플 이미지 ngc6543a.jpg를 가져와 표시합니다.
A = importdata('ngc6543a.jpg');
image(A)
헬퍼 함수 imread가 colormap과 alpha에서 빈 결과를 반환하므로, 출력 인수 A는 uint8형 클래스입니다.
텍스트 파일 가져오기 및 구분 기호와 열 제목 지정
텍스트 편집기를 사용하여 열 제목을 가지고 공백으로 구분되는 myfile01.txt라는 ASCII 파일을 생성합니다.
Day1 Day2 Day3 Day4 Day5 Day6 Day7 95.01 76.21 61.54 40.57 5.79 20.28 1.53 23.11 45.65 79.19 93.55 35.29 19.87 74.68 60.68 1.85 92.18 91.69 81.32 60.38 44.51 48.60 82.14 73.82 41.03 0.99 27.22 93.18 89.13 44.47 17.63 89.36 13.89 19.88 46.60
공백 구분 기호와 단일 열 제목을 지정하여 파일을 가져옵니다.
filename = 'myfile01.txt'; delimiterIn = ' '; headerlinesIn = 1; A = importdata(filename,delimiterIn,headerlinesIn);
열 3과 5를 봅니다.
for k = [3, 5] disp(A.colheaders{1, k}) disp(A.data(:, k)) disp(' ') end
Day3
61.5400
79.1900
92.1800
73.8200
17.6300
Day5
5.7900
35.2900
81.3200
0.9900
13.8900텍스트 파일 가져오기 및 감지된 구분 기호 반환
텍스트 편집기를 사용하여 쉼표로 구분되는 myfile02.txt라는 ASCII 파일을 생성합니다.
1,2,3 4,5,6 7,8,9
파일을 가져오고 출력 데이터와 감지된 구분 기호 문자를 표시합니다.
filename = 'myfile02.txt';
[A,delimiterOut]=importdata(filename)
A =
1 2 3
4 5 6
7 8 9
delimiterOut =
,클립보드에서 데이터 가져오기
다음 라인을 클립보드로 복사합니다. 텍스트를 선택하고 마우스 오른쪽 버튼을 클릭한 다음 복사(Copy)를 선택합니다.
1,2,3 4,5,6 7,8,9
다음을 입력하여 클립보드의 데이터를 MATLAB®으로 가져옵니다.
A = importdata('-pastespecial')A =
1 2 3
4 5 6
7 8 9
입력 인수
filename — 가져올 파일의 이름 및 확장자
문자형 벡터 | string형
가져올 파일의 이름과 확장자로, 문자형 벡터 또는 string형으로 지정됩니다. importdata가 파일 확장자를 인식하는 경우 관련 파일 형식(예: MAT 파일의 경우 load, 또는 스프레드시트의 경우 xlsread)을 가져오도록 설계된 MATLAB 헬퍼 함수를 호출합니다. 그렇지 않은 경우, importdata는 파일을 구분 기호가 사용된 ASCII 파일로 해석합니다.
ASCII 파일 및 스프레드시트의 경우, importdata는 직사각형 형식의(즉, 행렬과 같은) 숫자형 데이터를 찾게 됩니다. 텍스트 헤더는 다음과 같이 숫자형 데이터의 위 또는 왼쪽에 나타날 수 있습니다.
파일 맨 위의 숫자형 데이터 위에 표시되는 열 제목 또는 파일 설명 텍스트입니다.
숫자형 데이터 왼쪽의 행 헤더입니다.
예: 'myFile.jpg' 또는 "myFile.jpg"
데이터형: char | string
delimiterIn — 열 구분 문자
문자형 벡터 | string형
열 구분 문자로, 문자형 벡터 또는 string형으로 지정됩니다. 디폴트 문자는 파일에서 해석됩니다. 탭에 대해서는 '\t'를 사용합니다.
예: ',' 또는 ","
예: ' ' 또는 " "
데이터형: char | string
headerlinesIn — ASCII 파일의 텍스트 헤더 라인 수
음이 아닌 정수 스칼라
ASCII 파일의 텍스트 헤더 라인 수로, 음이 아닌 정수 스칼라로 지정됩니다. headerlinesIn을 지정하지 않을 경우, importdata 함수는 파일에서 이 값을 검출합니다.
데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
출력 인수
A — 파일의 데이터
행렬 | 다차원 배열 | 스칼라 구조체형 배열
파일의 데이터로, 파일의 특성에 따라 행렬, 다차원 배열 또는 스칼라 구조체형 배열로 반환됩니다. 입력 파일의 파일 형식을 기반으로 하여 importdata는 헬퍼 함수를 호출해 데이터를 읽습니다. 헬퍼 함수가 비어 있지 않은 결과를 두 개 이상 반환하는 경우, importdata는 struct형 배열에 출력값을 결합합니다.
다음 표에는 두 개 이상의 출력값을 반환할 수 있는 헬퍼 함수에 대한 파일 형식과 구조체형 배열 A에서 가질 수 있는 필드가 나와 있습니다.
| 파일 형식 | 가질 수 있는 필드 | 클래스 |
|---|---|---|
MAT 파일 | 각 변수에 대해 하나의 필드 | 각 변수와 연관된 클래스. |
ASCII 파일 및 스프레드시트 |
| ASCII 파일의 경우 |
이미지 |
|
|
오디오 파일 |
|
|
기타 대부분의 지원 파일 형식에 대한 MATLAB 헬퍼 함수는 하나의 출력값을 반환합니다. 각 출력값 클래스에 대한 자세한 내용은 가져오기와 내보내기에 지원되는 파일 형식의 함수 목록을 참조하십시오.
ASCII 파일 또는 스프레드시트가 열 제목 또는 행 제목 중 하나만 포함하는 경우 importdata는 출력 구조체에 colheaders 또는 rowheaders 필드를 반환합니다. 여기서
colheaders는 열 제목 텍스트의 마지막 라인만 포함합니다.importdata는textdata필드의 모든 텍스트를 저장합니다.rowheaders는 파일 또는 워크시트가 하나의 열로 구성된 행 헤더를 포함하는 경우에만 생성됩니다.
delimiterOut — 입력 ASCII 파일에서 감지된 열 구분자
문자형 벡터
입력 ASCII 파일에서 감지된 열 구분자로, 문자형 벡터로 반환됩니다.
headerlinesOut — 입력 ASCII 파일에서 감지된 텍스트 헤더 라인 수
정수
입력 ASCII 파일에서 감지된 텍스트 헤더 라인 수로, 정수로 반환됩니다.
팁
숫자가 아닌 문자(예: 문자 데이터 열, 또는 형식이 지정된 날짜나 시간)가 열 제목 또는 행 제목 외부에 있는 ASCII 파일을 가져오려면
importdata대신textscan을 사용하십시오.
참고 항목
imread | load | readtable | save | textscan | uiimport | xlsread
textscan: 텍스트 파일이나 문자열에서 형식 지정된 데이터 읽어 들어기
구문
C = textscan(fileID,formatSpec)C = textscan(fileID,formatSpec,N)C = textscan(chr,formatSpec)C = textscan(chr,formatSpec,N)C = textscan(___,Name,Value)[C,position]
= textscan(___)설명
은 열려 있는 텍스트 파일의 데이터를 셀형 배열 C = textscan(fileID,formatSpec)C로 읽어 들입니다. 파일 ID fileID로 텍스트 파일을 지정합니다. fileID 값은 fopen으로 파일을 열어 구할 수 있습니다. 파일에서 읽기가 끝나면 fclose(fileID)를 호출하여 파일을 닫습니다.
textscan은 파일의 데이터가 formatSpec의 변환 지정자와 일치하는지 확인합니다. textscan은 전체 파일에 formatSpec을 다시 적용하고 formatSpec을 데이터와 일치시킬 수 없는 경우 중지합니다.
은 C = textscan(fileID,formatSpec,N)formatSpec을 N번 사용하여 파일 데이터를 읽어 들입니다. 여기서 N은 양의 정수입니다. N주기 이후에 파일에서 추가 데이터를 읽으려면 원래 fileID를 사용하여 textscan을 다시 호출하십시오. 동일한 파일 ID(fileID)와 함께 textscan을 호출하여 파일의 텍스트 스캔을 재개하는 경우, textscan은 마지막 읽기가 종료된 지점에서 읽기를 자동으로 재개합니다.
은 문자형 벡터 C = textscan(chr,formatSpec)chr의 텍스트를 셀형 배열 C로 읽어 들입니다. 문자형 벡터에서 텍스트를 읽어올 때는 textscan을 반복 호출할 때마다 스캔이 처음부터 다시 시작됩니다. 마지막 위치에서 스캔을 다시 시작하려면 position 출력값을 요청하십시오.
textscan은 문자형 벡터 chr의 데이터가 formatSpec에 지정된 형식과 일치하는지 확인합니다.
은 C = textscan(chr,formatSpec,N)formatSpec을 N번 사용합니다. 여기서 N은 양의 정수입니다.
는 위에 열거된 구문에 C = textscan(___,Name,Value)Name,Value 쌍의 입력 인수를 하나 이상 사용하여 옵션을 지정합니다.
예제
부동소수점 숫자 읽기
부동소수점 숫자가 포함된 문자형 벡터 읽기
chr = '0.41 8.24 3.57 6.24 9.27'; C = textscan(chr,'%f');
formatSpec 내의 '%f' 지정자는 chr의 각 필드에서 배정밀도 부동소수점 숫자가 있는지 확인하도록 textscan에 지시합니다.
셀형 배열 C의 내용을 표시합니다.
celldisp(C)
C{1} =
0.4100
8.2400
3.5700
6.2400
9.2700
각 값을 소수점 1자릿수로 자르며 동일한 문자형 벡터를 읽습니다.
C = textscan(chr,'%3.1f %*1d');지정자 %3.1f는 필드 너비 3자릿수와 정밀도 1을 나타냅니다. textscan 함수는 소수점 및 소수점 다음의 1자리를 포함하여 총 3자리를 읽습니다. 지정자 %*1d는 나머지 숫자를 건너뛰도록 textscan에 지시합니다.
셀형 배열 C의 내용을 표시합니다.
celldisp(C)
C{1} =
0.4000
8.2000
3.5000
6.2000
9.2000
다른 데이터형 읽기
데이터 파일을 로드하고, 적합한 유형을 사용하여 각 열을 읽습니다.
파일 scan1.dat를 로드하고 텍스트 편집기에서 파일 내용을 미리 봅니다. 아래에 스크린샷이 나와 있습니다.
filename = fullfile(matlabroot,'examples','matlab','scan1.dat');

파일을 열고, 적절한 변환 지정자를 사용하여 각 열을 읽습니다. textscan은 1-by-9 셀형 배열 C를 반환합니다.
fileID = fopen(filename); C = textscan(fileID,'%s %s %f32 %d8 %u %f %f %s %f'); fclose(fileID); whos C
Name Size Bytes Class Attributes C 1x9 2249 cell
C의 각 셀의 MATLAB® 데이터형을 확인합니다.
C
C = 1×9 cell array
{3×1 cell} {3×1 cell} [3×1 single] [3×1 int8] [3×1 uint32] [3×1 double] [3×1 double] {3×1 cell} [3×1 double]
개별 요소를 검토합니다. C{1}과 C{2}는 셀형 배열입니다. C{5}는 uint32 데이터형이므로 C{5}의 처음 2개 요소는 32비트 부호 없는 정수에 대한 최댓값이거나 intmax('uint32')입니다.
celldisp(C)
C{1}{1} =
09/12/2005
C{1}{2} =
10/12/2005
C{1}{3} =
11/12/2005
C{2}{1} =
Level1
C{2}{2} =
Level2
C{2}{3} =
Level3
C{3} =
12.3400
23.5400
34.9000
C{4} =
45
60
12
C{5} =
4294967295
4294967295
200000
C{6} =
Inf
-Inf
10
C{7} =
NaN
0.0010
100.0000
C{8}{1} =
Yes
C{8}{2} =
No
C{8}{3} =
No
C{9} =
5.1000 + 3.0000i
2.2000 - 0.5000i
3.1000 + 0.1000i
리터럴 텍스트 제거하기
이전 예제에서 다룬 데이터의 두 번째 열의 각 필드에서 리터럴 텍스트 'Level'을 제거합니다. 아래에 이 파일의 미리보기가 나와 있습니다.

파일을 열고, formatSpec 입력값의 리터럴 텍스트를 일치시킵니다.
filename = fullfile(matlabroot,'examples','matlab','scan1.dat'); fileID = fopen(filename); C = textscan(fileID,'%s Level%d %f32 %d8 %u %f %f %s %f'); fclose(fileID); C{2}
ans = 3×1 int32 column vector
1
2
3
C의 두 번째 셀의 MATLAB® 데이터형을 확인합니다. 1-by-9 셀형 배열 C의 두 번째 셀은 이제 int32 데이터형이 됩니다.
disp( class(C{2}) )int32
라인의 나머지 건너뛰기
이전 예제에서 다룬 파일의 첫 번째 열을 셀형 배열로 읽어 들이고, 라인의 나머지를 건너뜁니다.
filename = fullfile(matlabroot,'examples','matlab','scan1.dat'); fileID = fopen(filename); dates = textscan(fileID,'%s %*[^\n]'); fclose(fileID); dates{1}
ans = 3×1 cell array
'09/12/2005'
'10/12/2005'
'11/12/2005'
textscan은 1-by-1 셀형 배열 날짜를 반환합니다.
구분 기호 및 빈 값 변환 지정
파일 data.csv를 로드하고 텍스트 편집기에서 파일 내용을 미리 봅니다. 아래에 스크린샷이 나와 있습니다. 이 파일에는 쉼표로 구분된 데이터가 들어 있으며, 빈 값도 들어 있습니다.

빈 셀을 -Inf로 변환하고 파일을 읽습니다.
filename = fullfile(matlabroot,'examples','matlab','data.csv'); fileID = fopen(filename); C = textscan(fileID,'%f %f %f %f %u8 %f',... 'Delimiter',',','EmptyValue',-Inf); fclose(fileID); column4 = C{4}, column5 = C{5}
column4 =
4
-Inf
column5 = 2×1 uint8 column vector
0
11
textscan은 1-by-6 셀형 배열 C를 반환합니다. textscan 함수는 C{4}의 빈 값을 -Inf로 변환합니다. 여기서 C{4}는 부동소수점 형식과 연결되어 있습니다. MATLAB®은 부호 없는 정수 -Inf를 0으로 나타내기 때문에 textscan은 C{5}의 빈 값을 -Inf가 아니라 0으로 변환합니다.
비어 있는 상태나 주석으로 처리할 텍스트 지정하기
파일 data2.csv를 로드하고 텍스트 편집기에서 파일 내용을 미리 봅니다. 아래에 스크린샷이 나와 있습니다. 이 파일에는 주석으로 해석될 수 있는 데이터와, 'NA' 또는 'na'처럼 빈 필드를 나타낼 수 있는 기타 요소가 들어 있습니다.
filename = fullfile(matlabroot,'examples','matlab','data2.csv');

textscan이 주석이나 빈 값으로 취급해야 하는 입력값을 지정하고, 데이터를 C로 스캔합니다.
fileID = fopen(filename); C = textscan(fileID,'%s %n %n %n %n','Delimiter',',',... 'TreatAsEmpty',{'NA','na'},'CommentStyle','//'); fclose(fileID);
출력값을 표시합니다.
celldisp(C)
C{1}{1} =
abc
C{1}{2} =
def
C{2} =
2
NaN
C{3} =
NaN
5
C{4} =
3
6
C{5} =
4
7
반복 구분 기호를 하나로 취급
파일 data3.csv를 로드하고 텍스트 편집기에서 파일 내용을 미리 봅니다. 아래에 스크린샷이 나와 있습니다. 이 파일에는 반복되는 구분 기호가 들어 있습니다.
filename = fullfile(matlabroot,'examples','matlab','data3.csv');

반복 쉼표를 단일 구분 기호로 취급하려면 MultipleDelimsAsOne 파라미터를 사용하여 값을 1(true)로 설정하십시오.
fileID = fopen(filename); C = textscan(fileID,'%f %f %f %f','Delimiter',',',... 'MultipleDelimsAsOne',1); fclose(fileID); celldisp(C)
C{1} =
1
5
C{2} =
2
6
C{3} =
3
7
C{4} =
4
8
반복 변환 지정자 지정 및 숫자형 데이터 수집
이 예제에 대한 데이터 파일 grades.txt를 로드하고 텍스트 편집기에서 파일 내용을 미리 봅니다. 아래에 스크린샷이 나와 있습니다. 이 파일에는 반복되는 구분 기호가 들어 있습니다.
filename = fullfile(matlabroot,'examples','matlab','grades.txt');

'%s' 형식을 4번 사용하여 열 제목을 읽습니다.
fileID = fopen(filename); formatSpec = '%s'; N = 4; C_text = textscan(fileID,formatSpec,N,'Delimiter','|');
파일에서 숫자형 데이터를 읽습니다.
C_data0 = textscan(fileID,'%d %f %f %f')C_data0 = 1×4 cell array
[4×1 int32] [4×1 double] [4×1 double] [4×1 double]
CollectOutput의 디폴트 값은 0(false)이므로 textscan은 개별 배열로 숫자형 데이터의 각 열을 반환합니다.
파일 위치 표시자를 파일의 시작 부분으로 설정합니다.
frewind(fileID);
파일을 다시 읽고 CollectOutput을 1(true)로 설정하여 동일한 클래스의 연속 열을 단일 배열로 모읍니다. repmat 함수를 사용하여 %f 변환 지정자가 3번 나타나야 함을 지정할 수 있습니다. 이 기법은 형식이 여러 번 반복되는 경우에 유용합니다.
C_text = textscan(fileID,'%s',N,'Delimiter','|'); C_data1 = textscan(fileID,['%d',repmat('%f',[1,3])],'CollectOutput',1)
C_data1 = 1×2 cell array
[4×1 int32] [4×3 double]
테스트 점수(모두 double형)가 단일 4x3 배열에 수집됩니다.
파일을 닫습니다.
fclose(fileID);
따옴표로 묶인 텍스트 및 숫자형 필드 읽기 또는 건너뛰기
텍스트 파일에서 데이터의 첫 번째 열과 마지막 열을 읽습니다. 텍스트로 구성된 열과 정수 데이터로 구성된 열을 건너뜁니다.
파일 names.txt를 로드하고 텍스트 편집기에서 파일 내용을 미리 봅니다. 아래에 스크린샷이 나와 있습니다. 이 파일에는 따옴표로 묶인 텍스트 열이 2개 있고, 이어서 정수 열이 1개 있으며, 마지막으로 부동소수점 숫자 열이 1개 들어 있습니다.
filename = fullfile(matlabroot,'examples','matlab','names.txt');

파일에서 데이터의 첫 번째 열과 마지막 열을 읽습니다. 변환 지정자 %q를 사용하여 큰따옴표(")로 묶인 텍스트를 읽습니다. %*q는 따옴표로 묶인 텍스트를 건너뛰고 %*d는 정수 필드를 건너뛰고 %f는 부동소수점 숫자를 읽습니다. 'Delimiter' 이름-값 쌍의 인수를 사용하여 쉼표 구분자를 지정합니다.
fileID = fopen(filename,'r'); C = textscan(fileID,'%q %*q %*d %f','Delimiter',','); fclose(fileID);
Display the output. |textscan| returns a |1-by-2| cell array, |C|.
Double quotation marks enclosing the text are removed.
celldisp(C)
C{1}{1} =
Smith, J.
C{1}{2} =
Bates, G.
C{1}{3} =
Curie, M.
C{1}{4} =
Murray, G.
C{1}{5} =
Brown, K.
C{2} =
71.1000
69.3000
64.1000
133.0000
64.9000
다른 언어의 날짜 읽기
텍스트 편집기에서 파일 german_dates.txt를 로드하고 파일 내용을 미리 봅니다. 아래에 스크린샷이 나와 있습니다. 값의 첫 번째 열에는 독일식 날짜가 포함되어 있고 두 번째 및 세 번째 열에는 숫자형 값이 들어 있습니다.
filename = fullfile(matlabroot,'examples','matlab','german_dates.txt');

파일을 엽니다. fopen의 마지막 입력값으로 파일에 연결되어 있는 문자 인코딩 체계를 지정합니다.
fileID = fopen(filename,'r','n','ISO-8859-15');
파일을 읽습니다. %{dd % MMMM yyyy}D 지정자를 사용하여 파일의 날짜 형식을 지정합니다. DateLocale 이름-값 쌍의 인수를 사용하여 날짜의 로케일을 지정합니다.
C = textscan(fileID,'%{dd MMMM yyyy}D %f %f',... 'DateLocale','de_DE','Delimiter',','); fclose(fileID);
C의 첫 번째 셀 내용을 확인합니다. 시스템 로케일에 따라 MATLAB이 사용하는 언어로 날짜가 표시됩니다.
C{1}ans = 3×1 datetime array
01 January 2014
01 February 2014
01 March 2014
디폴트가 아닌 제어 문자 읽기
sprintf를 사용하여 데이터에서 디폴트가 아닌 이스케이프 시퀀스를 변환합니다.
폼 피드 문자 \f를 포함하는 텍스트를 만듭니다. 그런 다음, textscan을 사용하여 텍스트를 읽기 위해 sprintf를 호출하여 폼 피드를 명시적으로 변환합니다.
lyric = sprintf('Blackbird\fsinging\fin\fthe\fdead\fof\fnight'); C = textscan(lyric,'%s','delimiter',sprintf('\f')); C{1}
ans = 7×1 cell array
'Blackbird'
'singing'
'in'
'the'
'dead'
'of'
'night'
textscan이 1x1 셀형 배열 C를 반환합니다.
스캔 재개하기
시작 부분 외의 위치에서 스캔을 재개합니다.
텍스트 스캔을 재개하면 textscan이 항상 시작 부분부터 읽습니다. 다른 위치에서 스캔을 재개하려면 textscan에 대한 초기 호출에서 2출력 인수 구문을 사용하십시오.
예를 들어, lyric이라는 문자형 벡터를 생성해 보겠습니다. 문자형 벡터의 첫 번째 단어를 읽은 다음 스캔을 재개합니다.
lyric = 'Blackbird singing in the dead of night'; [firstword,pos] = textscan(lyric,'%9c',1); lastpart = textscan(lyric(pos+1:end),'%s');
입력 인수
fileID — 파일 ID
숫자형 스칼라
열려 있는 텍스트 파일의 파일 ID로, 숫자로 지정됩니다. textscan으로 파일을 읽으려면 fopen을 사용하여 파일을 연 다음 fileID를 가져와야 합니다.
데이터형: double
formatSpec — 데이터 필드의 형식
문자형 벡터 | string형
데이터 필드의 형식으로, 하나 이상의 변환 지정자로 구성된 문자형 벡터 또는 string형으로 지정됩니다. textscan은 입력값을 읽을 때 데이터가 formatSpec에 지정된 형식과 일치하는지 확인합니다. textscan은 데이터 필드와 일치하지 않는 부분이 나오면 읽기를 중지하고 읽은 모든 필드를 반환합니다.
변환 지정자의 개수에 따라 출력 배열 C의 셀 개수가 결정됩니다.
숫자형 필드
다음 표에는 숫자형 입력값에 대해 사용 가능한 변환 지정자가 나와 있습니다.
| 숫자형 입력 유형 | 변환 지정자 | 출력값 클래스 |
|---|---|---|
| 정수, 부호 있음 | %d | int32 |
%d8 | int8 | |
%d16 | int16 | |
%d32 | int32 | |
%d64 | int64 | |
| 정수, 부호 없음 | %u | uint32 |
%u8 | uint8 | |
%u16 | uint16 | |
%u32 | uint32 | |
%u64 | uint64 | |
| 부동소수점 숫자 | %f | double |
%f32 | single | |
%f64 | double | |
%n | double |
숫자형이 아닌 필드
다음 표에는 숫자형이 아닌 문자를 포함하는 입력값에 대해 사용 가능한 변환 지정자가 나와 있습니다.
| 숫자형이 아닌 입력 유형 | 변환 지정자 | 세부 정보 |
|---|---|---|
| 문자 | %c | 구분 기호를 포함하여 단일 문자를 읽습니다. |
| 텍스트 배열 | %s | 문자형 벡터로 구성된 셀형 배열로 읽습니다. |
%q | 문자형 벡터로 구성된 셀형 배열로 읽습니다. 텍스트가 큰따옴표( 예: | |
| 날짜와 시간 | %D | 위의 |
%{ | 위의 datetime형 표시 형식에 대한 자세한 내용은 datetime형 배열의 예: | |
| 범주 | %C |
|
| 패턴 일치 | %[...] | 문자형 벡터로 구성된 셀형 배열로 괄호 내부의 문자와 일치하는 문자를 읽다가 일치하지 않는 첫 번째 문자에서 중지합니다. 세트에 예: |
%[^...] | 괄호 내부의 문자와 일치하지 않는 문자를 읽다가 일치하는 첫 번째 문자에서 중지합니다. 예: |
옵션 연산자
formatSpec의 변환 지정자는 다음 순서로 표시되는 옵션 연산자를 포함할 수 있습니다(이해를 돕기 위해 공백을 포함함).

옵션 연산자로는 다음이 포함됩니다.
필드 및 문자 무시
특정 필드 또는 필드의 일부분을 무시하도록 지정하지 않을 경우
textscan은 순차적으로 파일의 모든 문자를 읽습니다.필드나 문자형 필드의 일부분을 건너뛰려면 퍼센트 문자(%) 다음에 별표 문자(*)를 삽입하십시오.
연산자
수행 동작
%*k필드를 건너뜁니다.
k는 건너뛸 필드를 식별하는 변환 지정자입니다.textscan은 이러한 필드에 대해 출력 셀을 생성하지 않습니다.예:
'%s %*s %s %s %*s %*s %s'(공백은 옵션임)는 텍스트
'Blackbird singing in the dead of night'를
'Blackbird' 'in' 'the' 'night'를 가진 4개의 출력 셀로 변환합니다.'%*ns'최대
n개 문자를 건너뜁니다. 여기서n은 필드의 문자 개수보다 작거나 같은 정수입니다.예:
'%*3s %s'는'abcdefg'를'defg'로 변환합니다. 구분 기호가 쉼표인 경우, 동일한 구분 기호는'abcde,fghijkl'을'de';'ijkl'이 포함된 셀형 배열로 변환합니다.'%*nc'구분 기호 문자를 포함하여
n개 문자를 건너뜁니다.필드 너비
textscan은 필드 너비나 정밀도로 지정되는 개수만큼 또는 최초의 구분 기호가 나타날 때까지 문자나 숫자를 읽습니다(둘 중 먼저 해당하는 경우 적용). 숫자형 지수의 소수점, 부호(+또는-), 지수 문자, 숫자는 필드 너비 내의 문자 및 숫자로 계산됩니다. 복소수의 경우, 필드 너비는 실수부와 허수부의 개별 너비를 나타냅니다. 허수부의 경우, 필드 너비는 + 또는 −를 포함하지만i또는j는 포함하지 않습니다. 변환 지정자의 퍼센트 문자(%) 다음에 숫자를 삽입하여 필드 너비를 지정하십시오.예:
%5f는'123.456'을123.4로 읽습니다.예:
%5c는'abcdefg'를'abcde'로 읽습니다.필드 너비 연산자가 단일 문자와 함께 사용되면(
%c),textscan은 또한 구분 기호, 공백 및 라인 끝(EOL) 문자를 읽습니다.
예:%7c는 공백을 포함하여 7개 문자를 읽습니다. 그러므로'Day and night'를'Day and'로 읽습니다.정밀도
부동소수점 숫자의 경우(
%n,%f,%f32,%f64), 읽으려는 소수점 자릿수를 지정할 수 있습니다.예:
%7.2f는'123.456'을123.45로 읽습니다.리터럴 텍스트 무시
textscan은formatSpec변환 지정자에 추가된 텍스트를 무시합니다.예:
Level%u8은'Level1'을1로 읽습니다.예:
%u8Step은'2Step'을2로 읽습니다.
데이터형: char | string
N — formatSpec을 적용할 횟수
Inf (디폴트 값) | 양의 정수
formatSpec을 적용할 횟수로, 양의 정수로 지정됩니다.
데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
chr — 입력 텍스트
문자형 벡터 | string형
읽을 텍스트를 입력합니다.
데이터형: char | string
이름-값 쌍의 인수
(옵션)Name,Value 인수가 쉼표로 구분되어 지정됩니다. 여기서 Name은 인수 이름이고 Value는 대응값입니다. Name은 작은따옴표(' ') 안에 표시해야 합니다. Name1,Value1,...,NameN,ValueN과 같이 여러 개의 이름-값 쌍의 인수를 어떤 순서로든 지정할 수 있습니다.
C = textscan(fileID,formatSpec,'HeaderLines',3,'Delimiter',',')는 데이터의 처음 세 라인을 건너뛴 다음, 쉼표를 구분 기호로 취급하여 남은 데이터를 읽습니다.이름은 대/소문자를 구분하지 않습니다.
'CollectOutput' — 데이터를 결합할지에 대한 논리값 표시자
false (디폴트 값) | true
데이터를 결합할지에 대한 논리값 표시자로, 'CollectOutput'과 함께 true 또는 false가 쉼표로 구분되어 지정됩니다. true인 경우 가져오기 함수는 동일한 MATLAB® 기본 클래스의 연속된 출력 셀들을 단일 배열로 결합합니다.
'CommentStyle' — 무시할 텍스트(주석)를 지정하는 기호
문자형 벡터 | 문자형 벡터로 구성된 셀형 배열 | string형 | string형 배열
무시할 텍스트를 지정하는 기호로, 'CommentStyle'과 함께 문자형 벡터, 문자형 벡터로 구성된 셀형 배열, string형 또는 string형 배열이 쉼표로 구분되어 지정됩니다.
예를 들어, '%'와 같은 문자를 지정하여 동일한 라인에서 기호 다음의 텍스트를 무시할 수 있습니다. {'/*', '*/'}와 같은 두 개의 문자형 벡터로 구성된 셀형 배열을 지정하여 이러한 시퀀스 사이의 모든 텍스트를 무시할 수 있습니다.
MATLAB은 필드 내부가 아니라 각 필드의 시작 부분에서만 주석을 확인합니다.
예: 'CommentStyle',{'/*', '*/'}
예: 'CommentStyle',["/*", "*/"}
데이터형: char | string
'DateLocale' — 날짜 읽기에 적용할 로케일
문자형 벡터 | string형
날짜 읽기에 적용할 로케일로, 'DateLocale'과 함께 형식의 문자형 벡터가 쉼표로 구분되어 지정됩니다. 여기서 xx_YYxx는 언어를 지정하는 ISO 639-1 두 자리 코드(소문자)이고, YY는 국가를 지정하는 ISO 3166-1 alpha-2 코드(대문자)입니다. 로케일에 일반적으로 사용되는 값 목록은 datetime 함수에 대한 Locale 이름-값 쌍의 인수를 참조하십시오.
%D 형식 지정자를 사용하여 텍스트를 날짜로 읽을 때 textscan이 월 이름, 요일 이름, 약어를 어떤 로케일로 해석해야 하는지 DateLocale로 지정할 수 있습니다.
예: 'DateLocale','ja_JP'
'Delimiter' — 필드 구분 기호 문자
문자형 벡터 | 문자형 벡터로 구성된 셀형 배열 | string형 | string형 배열
필드 구분 기호 문자로, 'Delimiter'와 함께 문자형 벡터, 문자형 벡터로 구성된 셀형 배열 중 하나가 쉼표로 구분되어 지정됩니다. 여러 구분 기호는 문자형 벡터로 구성된 셀형 배열로 지정합니다.
예: 'Delimiter',{';','*'}
textscan은 반복된 구분 기호 문자를 개별 구분 기호로 해석하고 출력 셀에 빈 값을 반환합니다.
각 데이터 행 내에서, 디폴트 필드 구분 기호는 공백입니다. 공백(Whitespace)은 공백('
'), 백스페이스('\b'), 탭('\t') 문자의 조합일 수 있습니다. 구분 기호를 지정하지 않을 경우 다음이 적용됩니다.
구분 기호 문자는 공백 문자와 동일합니다. 디폴트 공백 문자는
' ','\b','\t'입니다.'Whitespace'이름-값 쌍의 인수를 사용하여 대체 공백 문자를 지정할 수 있습니다.textscan은 반복된 공백 문자를 단일 구분 기호로 해석합니다.
다음 이스케이프 시퀀스 중 하나를 구분 기호로 지정할 경우, textscan은 해당 시퀀스를 대응하는 제어 문자로 변환합니다.
\b | 백스페이스 |
\n | 새 줄(Newline) |
\r | 캐리지 리턴 |
\t | 탭 |
\\ | 백슬래시(\) |
데이터형: char | string
'EmptyValue' — 빈 숫자형 필드에 대해 반환된 값
NaN (디폴트 값) | 스칼라
구분된 텍스트 파일에서 빈 숫자형 필드에 대해 반환된 값으로, 'EmptyValue'와 함께 스칼라가 쉼표로 구분되어 지정됩니다.
'EndOfLine' — 라인 끝(EOL) 문자
문자형 벡터 | string형
라인 끝(EOL) 문자로, 'EndOfLine'과 함께 문자형 벡터 또는 string형이 쉼표로 구분되어 지정됩니다. 문자형 벡터는 '\r\n'이거나 단일 문자를 지정해야 합니다. 일반적인 라인 끝(EOL) 문자는 새 줄(Newline) 문자('\n') 또는 캐리지 리턴('\r')이 있습니다. '\r\n'을 지정할 경우 가져오기 함수는 \r, \n, 이 둘의 조합(\r\n)을 모두 라인 끝(EOL) 문자로 처리합니다.
디폴트 라인 끝(EOL) 시퀀스는 파일의 내용에 따라 \n, \r, \r\n 중 하나입니다.
누락된 값이 있으면서 파일의 마지막 라인 끝에 라인 끝(EOL) 시퀀스가 있는 경우 가져오기 함수는 해당 필드에 대해 빈 값을 반환합니다. 이를 통해, 출력 셀형 배열 C의 개별 셀이 같은 크기를 유지할 수 있습니다.
예: 'EndOfLine',':'
예: "EndOfLine",":"
데이터형: char | string
'ExpChars' — 지수 문자
'eEdD' (디폴트 값) | 문자형 벡터 | string형
지수 문자로, 'ExpChars'와 함께 문자형 벡터 또는 string형이 쉼표로 구분되어 지정됩니다. 디폴트 지수 문자는 e, E, d, D입니다.
데이터형: char | string
'HeaderLines' — 헤더 라인 수
0 (디폴트 값) | 양의 정수
헤더 라인 수로, 'HeaderLines'와 함께 양의 정수가 쉼표로 구분되어 지정됩니다. textscan은 현재 라인의 나머지를 포함하여 헤더 라인을 건너뜁니다.
'MultipleDelimsAsOne' — 여러 구분 기호 처리 방식
0 (false) (디폴트 값) | 1 (true)
여러 구분 기호 처리 방식으로, 'MultipleDelimsAsOne'과 함께 true 또는 false가 쉼표로 구분되어 지정됩니다. true인 경우, 가져오기 함수는 연속된 구분 기호를 단일 구분 기호로 취급합니다. 공백으로 구분된 반복 구분 기호도 단일 구분 기호로 취급됩니다. Delimiter 옵션도 지정해야 합니다.
예: 'MultipleDelimsAsOne',1
'ReturnOnError' — textscan이 읽기 또는 변환에 실패할 때의 동작
1 (true) (디폴트 값) | 0 (false)
textscan이 읽기 또는 변환에 실패할 때의 동작으로, 'ReturnOnError'와 함께 true 또는 false 중 하나가 쉼표로 구분되어 지정됩니다. true인 경우, textscan은 오류 없이 종료되며 읽은 모든 필드를 반환합니다. false인 경우, textscan은 오류와 함께 종료되며 출력 셀형 배열을 반환하지 않습니다.
'TreatAsEmpty' — 빈 값으로 취급할 자리 표시자 텍스트
문자형 벡터 | 문자형 벡터로 구성된 셀형 배열 | string형 | string형 배열
빈 값으로 취급할 자리 표시자 텍스트로, 'TreatAsEmpty'와 함께 문자형 벡터, 문자형 벡터로 구성된 셀형 배열, string형 또는 string형 배열이 쉼표로 구분되어 지정됩니다. 이 옵션은 숫자형 필드에만 적용됩니다.
데이터형: char | string
'Whitespace' — 공백 문자
' \b\t' (디폴트 값) | 문자형 벡터 | string형
공백 문자로, 'Whitespace'와 함께 하나 이상의 문자로 구성된 문자형 벡터 또는 string형이 쉼표로 구분되어 지정됩니다. textscan은 Whitespace가 비어('') 있지 않거나 formatSpec이 변환 지정자를 포함하지 않으면 공백 문자 char(32)를 지정된 Whitespace에 추가합니다.
다음 이스케이프 시퀀스 중 하나를 공백 문자로 지정할 경우, textscan은 해당 시퀀스를 대응하는 제어 문자로 변환합니다.
\b | 백스페이스 |
\n | 새 줄(Newline) |
\r | 캐리지 리턴 |
\t | 탭 |
\\ | 백슬래시(\) |
데이터형: char | string
'TextType' — 텍스트의 출력 데이터형
'char' (디폴트 값) | 'string'
텍스트의 출력 데이터형으로, 'TextType'과 함께 'char'이나 'string'이 쉼표로 구분되어 지정됩니다. 값 'char'을 지정하면 textscan이 문자형 벡터로 구성된 셀형 배열로 텍스트를 반환합니다. 값 'string'을 지정하면 textscan이 string형의 배열로 텍스트를 반환합니다.
출력 인수
C — 파일 또는 텍스트 데이터
셀형 배열
파일 또는 텍스트 데이터로, 셀형 배열로 반환됩니다.
formatSpec의 각 숫자형 변환 지정자의 경우, textscan 함수는 Kx1 MATLAB 숫자형 벡터를 출력 셀형 배열 C로 반환합니다. 여기서 K는 textscan이 지정자와 일치하는 필드를 찾는 횟수입니다.
formatSpec의 각 텍스트 변환 지정자(%s, %q, %[...])에 대하여, textscan 함수는 문자형 벡터로 구성된 Kx1 셀형 배열을 반환합니다. 여기서 K는 textscan이 지정자와 일치하는 필드를 찾는 횟수입니다. 필드 너비 연산자를 포함하는 각 문자 변환의 경우, textscan은 KxM 문자형 배열을 반환합니다. 여기서 M은 필드 너비입니다.
formatSpec의 각 datetime형 또는 categorical형 변환 지정자의 경우, textscan 함수는 Kx1 날짜/시간형 또는 categorical형 벡터를 출력 셀형 배열 C로 반환합니다. 여기서 K는 textscan이 지정자와 일치하는 필드를 찾는 횟수입니다.
position — 파일 또는 문자형 벡터 내의 위치
정수
스캔 종료 시 파일 또는 문자형 벡터 내의 위치로, double형 클래스의 정수로 반환됩니다. 파일의 경우, ftell(fileID)는 textscan을 호출한 후에 같은 값을 반환할 수 있습니다. 문자형 벡터의 경우, position은 textscan이 읽은 문자의 개수를 나타냅니다.
알고리즘
textscan은 오버플로, 잘림 및 NaN, Inf, -Inf의 사용과 관련된 MATLAB 규칙에 따라 숫자형 필드를 지정된 출력 유형으로 변환합니다. 예를 들어, MATLAB은 정수 NaN을 0으로 나타냅니다. textscan이 정수 형식 지정자(%d 또는 %u)와 연결된 빈 필드를 찾는 경우 이 빈 값을 NaN이 아니라 0으로 반환합니다.
데이터가 텍스트 변환 지정자와 일치하는 경우 textscan은 구분 기호를 찾거나 라인 끝(EOL) 문자를 찾을 때까지 읽습니다. 데이터가 숫자형 변환 지정자와 일치하는 경우 textscan은 숫자형이 아닌 문자를 찾을 때까지 읽습니다. 특정 변환 지정자와 일치하는 부분을 더 이상 찾을 수 없게 되면 textscan은 formatSpec의 그 다음 변환 지정자와 데이터가 일치하는지 확인하기 시작합니다. 부호(+ 또는 -), 지수 문자, 소수점은 숫자 문자로 간주됩니다.

| 부호 | 자릿수 | 소수점 | 자릿수 | 지수 문자 | 부호 | 자릿수 |
|---|---|---|---|---|---|---|
| 부호 문자 하나를 읽습니다(있는 경우). | 1자리 이상의 숫자를 읽습니다. | 소수점 하나를 읽습니다(있는 경우). | 소수점이 있는 경우 바로 다음에 오는 1자리 이상의 숫자를 읽습니다. | 지수 문자 하나를 읽습니다(있는 경우). | 지수 문자가 있는 경우 부호 문자 하나를 읽습니다. | 지수 문자가 있는 경우 다음에 오는 1자리 이상의 숫자를 읽습니다. |
textscan은 복소수를 가져오는 경우 전체 필드를 복소수 필드로 설정해, 실수부와 허수부를 지정된 숫자형으로 변환합니다(예: %d 또는 %f). 유효한 형식의 복소수는 다음과 같습니다.
±<real>±<imag>i|j | 예: |
±<imag>i|j | 예: |
textscan은 복소수에 포함된 공백을 필드 구분 기호로 해석하므로 복소수에 공백을 포함시키지 마십시오.
참고 항목
dlmread | fopen | fread | fscanf | load | readtable | uiimport | xlsread
'CAE > Enjoy Programming' 카테고리의 다른 글
| [Python] ImportError: DLL load failed: 지정된 모듈을 찾을 수 없습니다. (0) | 2019.08.08 |
|---|---|
| 클립보드 구글번역 프로그램 ClipToGT (0) | 2017.12.12 |
| [Trouble Shooting] 첨자 인덱스는 실수형 양의 정수(복소수형 정수가 아님)이거나 논리형이어야 합니다 (1) | 2017.11.29 |
| VS Code (0) | 2017.11.29 |
| matplotlib import 시, 에러 발생 대처방법 (0) | 2017.03.31 |