MATLAB

.mat 파일 저장 및 불러오기

qlsenddl 2021. 5. 4. 17:08
728x90

 .mat 파일은 MATLAB code에서 사용한 변수, 함수 등을 저장할 수 있는 파일이다. 유용하게 사용되는 경우는 아래와 같다.

* 디버깅(debugging): 보통 MATLAB main code를 돌리면 code가 다 돌아갔을 때에 작업공간에 나타나는 변수는 main code 상에서 저장된 변수들만 나타난다. 때문에 main code에서 참조한 각 함수(function)들에서 사용된 변수를 확인하기 위해서는 중단점(breakpoint)을 설정해서 code가 돌아가는 중간에 확인해야 한다.(code가 돌아가는 내내 확인할 것이 아니라면 추천하지 않는다.) 하지만 참조하는 함수에서 .mat 파일을 저장하면 해당 함수에서 계산된 변수들을 따로 저장할 수 있다.

* 전달: 특정 code에서 사용된 변수들을 다른 개발자에게 전달하거나 다른 코드에 사용할 때에 .mat 파일로 저장해서 전달하면 쉽게 code 결과를 전달할 수 있다.

 

1. mat 파일 저장하기

형식

save 파일명: 파일명.mat파일을 저장하고 해당 code를 적기 이전의 작업공간 상의 변수들을 모두 저장한다.

save 파일명 변수명1 변수명2 ...: 파일명.mat파일을 저장하고 그 안에는 변수명1, 변수명2 ...에 해당하는 변수들만 저장한다.

 

ex>

a = 1;

b = 2;

c = a+b;

save test1

save test2 c

>>

test1.mat 결과
test2.mat 결과

2. mat 파일 불러오기

형식

load 파일명: 파일명.mat파일에 있는 모든 변수들을 작업공간으로 불러온다.

load 파일명 변수명1 변수명2 ...: 파일명.mat파일에 있는 변수명1, 변수명2 ...에 해당하는 변수들만 작업공간으로 불러온다.

 

ex> (1번 예시를 했다고 가정)

load test1

load test1 a b

>>

load test1 결과
load test1 a b 결과

3. exist & delete 함수 활용하기

exist 파일명.mat: 해당 mat 파일이 있는지 확인한다. 해당 파일이 있으면 0, 없으면 2값을 내보낸다.

exist('파일명.mat'): exist 파일명.mat와 동일

exist('파일명.mat', 'file'): 'file'은 파일과 폴더 중에서만 찾으라는 것을 의미한다. 나머지는 위와 동일

 

delete 파일명.mat: 해당 mat 파일을 삭제한다.

ex>

if exist('test1.mat', 'file') ~= 0

    delete test1.mat

end

>> test1.mat 파일이 있으면 해당 파일을 삭제하는 code

728x90