Main Content

dlmread

(권장되지 않음) ASCII로 구분된 숫자형 데이터 파일을 행렬로 읽기

dlmread는 권장되지 않습니다. readmatrix를 대신 사용하십시오. 자세한 내용은 호환성 관련 고려 사항을 참조하십시오.

설명

예제

M = dlmread(filename)은 ASCII로 구분된 숫자형 데이터 파일을 행렬 M으로 읽어 들입니다. dlmread 함수는 파일에서 구분 기호를 감지하고 반복되는 공백을 단일 구분 기호로 처리합니다.

M = dlmread(filename,delimiter)는 지정된 구분 기호를 사용하여 파일에서 데이터를 읽고 반복되는 구분 기호 문자를 별도의 구분 기호로 처리합니다.

예제

M = dlmread(filename,delimiter,R1,C1)은 행 오프셋 R1과 열 오프셋 C1에서 읽기를 시작합니다. 예를 들어, 오프셋 R1=0, C1=0은 파일의 첫 번째 값을 지정합니다.

구분 기호를 지정하지 않고 행 오프셋과 열 오프셋을 지정하려면 빈 문자를 자리 표시자로 사용하십시오(예: M = dlmread(filename,'',2,1)).

예제

M = dlmread(filename,delimiter,[R1 C1 R2 C2])는 행 오프셋 R1, R2와 열 오프셋 C1, C2로 경계가 지정된 범위만 읽어 들입니다. 범위를 정의하는 또 다른 방법은 [0 0 6 1] 대신 'A1..B7'과 같은 스프레드시트 표기법을 사용하는 것입니다.

예제

모두 축소

샘플 파일 count.dat를 읽습니다.

M = dlmread('count.dat')
M = 24×3

    11    11     9
     7    13    11
    14    17    20
    11    13     9
    43    51    69
    38    46    76
    61   132   186
    75   135   180
    38    88   115
    28    36    55
      ⋮

dlmread는 파일에서 구분 기호를 감지하고 행렬을 반환합니다.

두 개의 행렬을 파일에 쓴 다음 dlmread를 사용하여 전체 파일을 읽습니다.

이름이 myfile.txt인 파일로 행렬을 내보냅니다. 그런 다음, 다른 행렬을 파일에 추가(append)하여 한 행을 첫 번째 행렬 아래로 오프셋합니다.

X = magic(3);
dlmwrite('myfile.txt',[X*5 X/5],' ')
dlmwrite('myfile.txt',X,'-append', ...
   'roffset',1,'delimiter',' ')

파일 내용을 확인합니다.

type myfile.txt
40 5 30 1.6 0.2 1.2
15 25 35 0.6 1 1.4
20 45 10 0.8 1.8 0.4
  
8 1 6
3 5 7
4 9 2

dlmread를 사용하여 전체 파일을 읽습니다.

M = dlmread('myfile.txt')
M = 6×6

   40.0000    5.0000   30.0000    1.6000    0.2000    1.2000
   15.0000   25.0000   35.0000    0.6000    1.0000    1.4000
   20.0000   45.0000   10.0000    0.8000    1.8000    0.4000
    8.0000    1.0000    6.0000         0         0         0
    3.0000    5.0000    7.0000         0         0         0
    4.0000    9.0000    2.0000         0         0         0

dlmread가 사각형이 아닌 데이터를 포함하는 파일을 가져오는 경우 빈 필드를 0으로 채웁니다.

열 제목과 공백으로 구분된 값을 포함하는 파일 dlmlist.txt를 만듭니다.

test max min direction
10 27.7 12.4 12
11 26.9 13.5 18
12 27.4 16.9 31
13 25.1 12.7 29  

파일의 숫자형 값을 읽어 들입니다. 공백 구분 기호를 지정하고, 행 오프셋을 1로, 열 오프셋을 0으로 지정합니다.

filename = 'dlmlist.txt';
M = dlmread(filename,' ',1,0)
M =

   10.0000   27.7000   12.4000   12.0000
   11.0000   26.9000   13.5000   18.0000
   12.0000   27.4000   16.9000   31.0000
   13.0000   25.1000   12.7000   29.0000

열 제목과 공백으로 구분된 값을 포함하는 파일 dlmlist.txt를 만듭니다.

test max min direction
10 27.7 12.4 12
11 26.9 13.5 18
12 27.4 16.9 31
13 25.1 12.7 29  

파일에서 마지막 두 개의 숫자형 데이터 행만 읽습니다.

M = dlmread('dlmlist.txt',' ',[3 0 4 3])
M =

   12.0000   27.4000   16.9000   31.0000
   13.0000   25.1000   12.7000   29.0000

입력 인수

모두 축소

파일 이름으로, 문자형 벡터 또는 string형으로 지정됩니다.

예: 'myFile.dat' 또는 "myFile.dat"

데이터형: char | string

필드 구분 기호 문자로, 문자형 벡터 또는 string형으로 지정됩니다. 탭 구분 기호를 지정하려면 '\t'를 사용하십시오.

예: ',' 또는 ","

예: ' ' 또는 " "

데이터형: char | string

시작 행 오프셋으로, 음이 아닌 정수로 지정됩니다. 첫 번째 행의 오프셋은 0입니다.

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

시작 열 오프셋으로, 음이 아닌 정수로 지정됩니다. 첫 번째 열의 오프셋은 0입니다.

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

끝 행 오프셋으로, 음이 아닌 정수로 지정됩니다. 첫 번째 행의 오프셋은 0입니다.

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

끝 열 오프셋으로, 음이 아닌 정수로 지정됩니다. 첫 번째 열의 오프셋은 0입니다.

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

  • 행 오프셋과 열 오프셋을 지정하여 제목 행이나 열을 건너뛰십시오. 파일에서 제목 이외의 모든 값은 숫자형이어야 합니다.

알고리즘

dlmread는 구분된 필드 중 빈 필드를 0으로 채웁니다. 라인이 공백이 아닌 구분 기호 즉, 세미콜론 등으로 끝날 경우 dlmread 함수는 0으로 이루어진 열을 출력 행렬 M의 마지막에 추가해 반환합니다.

dlmread는 하나의 복소수를 하나의 복소수 필드로 가져옵니다. 다음 표는 복소수의 유효한 형식을 보여줍니다.

형식

±<real>±<imag>i|j

5.7-3.1i

±<imag>i|j

-7j

복소수에 포함된 공백은 유효하지 않으며 dlmread는 이러한 공백을 필드 구분 기호로 간주합니다.

버전 내역

R2006a 이전에 개발됨

모두 축소

R2019a: dlmread는 권장되지 않음

dlmread는 권장되지 않습니다. readmatrix를 대신 사용하십시오. dlmread를 제거할 계획은 없습니다.

R2019a부터는 구분된 텍스트 파일에서 행렬을 읽으려면 readmatrix 함수를 사용하십시오. readmatrix 함수는 dlmread 함수에 비해 다음과 같은 이점이 있습니다.

  • 성능 및 크로스 플랫폼 지원 기능이 더 우수함

  • 데이터 형식 및 데이터형의 자동 감지

  • 가져오기 옵션을 사용하여 데이터 가져오기 프로세스 제어(오류 및 누락된 데이터 처리 포함)

다음 표에서는 dlmread의 일반적인 사용법과 코드에서 대신 readmatrix를 사용하도록 업데이트하는 방법을 보여줍니다.

권장되지 않음

권장됨

M = dlmread(filename)
M = readmatrix(filename)