본문 바로가기

MATLAB/ㄴ 기타

37. matfile


파일을 메모리로 불러오지 않고 MAT 파일에 있는 변수에 액세스 및 변경

 

설명
MAT 파일 객체를 사용하면 파일을 메모리로 불러오지 않고 MAT 파일에 있는 변수에 액세스하고 변경할 수 있습니다. 

변수의 일부를 불러오거나 저장할 수 있습니다. 

MAT 파일 객체를 사용하여 변수를 부분적으로 불러오고 저장하면 load 및 save 명령을 사용할 때보다 필요한 메모리가 

적습니다.

구문
matObj = matfile(filename)

* matObj = matfile(filename)은 filename으로 지정된 MAT 파일에 연결되는 matlab.io.MatFile 객체를 생성합니다.
  이 MAT 파일 객체를 사용하면 변수를 메모리로 불러올 필요 없이 변수에 직접 액세스하고 변경할 수 있습니다.

 

matObj = matfile(filename,'Writable',isWritable)

* matObj = matfile(filename,'Writable',isWritable)은 파일에 대한 쓰기 액세스를 활성화하거나 비활성화합니다.

  isWritable을 true 또는 false로 지정합니다.

 

예제

1. MAT 파일 객체 만들기

파일에 대한 MAT 파일 객체를 만듭니다. matfile 함수는 MAT 파일에 대응하는 matlab.io.MatFile 객체를 생성합니다.

 

2. MAT 파일에 대한 쓰기 액세스를 활성화하기

객체를 생성할 때 MAT 파일 myFile.mat에 대한 쓰기 권한을 활성화합니다.

또는 MAT 파일 객체를 생성한 후에 Writable 속성을 설정하여 쓰기 권한을 활성화할 수도 있습니다.

 

3. 전체 변수 불러오기

샘플 MAT 파일 topography.mat를 엽니다. MAT 파일 객체를 사용하여 파일에서 변수 topo를 읽어옵니다.

MATLAB은 전체 변수 topo를 작업 공간으로 불러옵니다.

 

4. 전체 변수를 기존 MAT 파일에 저장하기

배열이 포함된 MAT 파일을 만든 다음, MAT 파일 객체를 사용해 다른 배열을 파일에 추가합니다.

20×20 배열 x를 생성하고 myFile.mat에 저장하여 MAT 파일을 만듭니다.

기존 MAT 파일에 연결된 MAT 파일 객체를 만듭니다. Writable을 true로 설정하여 쓰기 권한을 활성화합니다.

다른 15×15 배열 y를 생성합니다. MAT 파일 객체를 사용하여 y를 MAT 파일에 저장합니다.

구조체형 배열의 필드에 액세스하는 것과 마찬가지로, 점 표기법을 사용하여 MAT 파일에 변수를 지정합니다.

MATLAB이 변수 y를 파일에 추가합니다.

MAT 파일 myFile.mat에 저장된 모든 변수를 표시합니다.

 

5. 변수의 특정 부분을 불러오고 저장하기

MAT 파일 객체를 사용하여 MAT 파일에 있는 변수의 특정 부분에 액세스합니다.

예를 들어 MAT 파일에서 변수의 일부에 데이터를 저장하거나 변수의 일부를

MATLAB 작업 공간으로 읽어 들일 수 있습니다.

MAT 파일 객체를 사용하여 myFile2.mat 파일에서 변수 y의 일부에 데이터를 저장합니다.

먼저 MAT 파일 객체 m을 만듭니다.

다음으로, 배열을 만들어 변수 y의 일부에 저장합니다.

구조체형 배열의 필드에 액세스하는 것과 마찬가지로, 점 표기법을 사용하여 MAT 파일에 변수를 지정합니다.

MATLAB이 20×20 배열을 인덱스 (81:100,81:100)으로 지정된 y의 요소에 삽입합니다.

배열 y의 서브셋을 새 작업 공간 변수 z로 읽어옵니다.

MATLAB이 MAT 파일에서 인덱스 (85:94,85:94)로 지정된 10×10 부분배열을 작업 공간 변수 z로 읽어옵니다.

 

6. 변수의 크기 확인하기

변수의 크기를 확인한 다음 각 열의 평균을 계산합니다.

예제 MAT 파일 stocks.mat를 엽니다.

stocks.mat에서 변수 stocks의 크기를 확인합니다.

변수 stocks의 각 열에 대한 평균을 계산합니다.

 

7. 변수의 크기 조정하기

MAT 파일에서 변수의 크기를 변경합니다. 변수를 만든 다음 MAT 파일에 저장합니다.

MAT 파일을 열고 변수 크기를 조정합니다.

변수 크기를 다시 조정합니다. 이번에는 원래 크기보다 더 작게 만듭니다.

 


 

https://kr.mathworks.com/help/matlab/ref/matlab.io.matfile.html

 

파일을 메모리로 불러오지 않고 MAT 파일에 있는 변수에 액세스 및 변경 - MATLAB - MathWorks 한국

이 예제의 수정된 버전이 있습니다. 사용자가 편집한 내용을 반영하여 이 예제를 여시겠습니까?

kr.mathworks.com