Main Content

이 번역 페이지는 최신 내용을 담고 있지 않습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.

matlab.io.saveVariablesToScript

작업 공간 변수를 MATLAB 스크립트에 저장

설명

예제

matlab.io.saveVariablesToScript(filename)은 현재 작업 공간에 있는 변수를 filename.m이라는 MATLAB® 스크립트에 저장합니다. 파일 이름에 .m 접미사를 포함할 수 있습니다. 이 접미사를 포함하지 않으면, 함수에서 파일을 생성할 때 접미사를 추가합니다.

MATLAB이 코드를 생성할 수 없는 변수는 filename.mat라는 MAT 파일에 저장됩니다.

이름이 같은 파일이 이미 존재하는 경우에는 이 파일을 덮어씁니다.

예제

matlab.io.saveVariablesToScript(filename,varnames)varnames로 지정된 작업 공간 변수만 MATLAB 스크립트에 저장합니다.

예제

matlab.io.saveVariablesToScript(filename,Name,Value)는 하나 이상의 Name,Value 쌍 인수로 지정된 추가 옵션을 사용합니다.

[r1,r2] = matlab.io.saveVariablesToScript(filename)은 또한 다음과 같은 두 개의 셀형 배열을 반환합니다.

  • r1 - MATLAB 스크립트에 저장된 변수의 경우

  • r2 - MAT 파일에 저장된 변수의 경우

예제

모두 축소

작업 공간의 변수를 MATLAB 스크립트 test.m에 저장합니다.

matlab.io.saveVariablesToScript('test.m')

작업 공간에서 변수 myVar을 만든 다음 MATLAB 스크립트 test.m에 저장합니다.

myVar = 55.3;
matlab.io.saveVariablesToScript('test.m','myVar')

두 개의 변수 ab를 만든 다음 기존 MATLAB 스크립트 abfile.m에 저장합니다.

a = 72.3;
b = pi;
matlab.io.saveVariablesToScript('abfile.m',{'a','b'},...
'SaveMode','append')

두 개의 변수 yz를 업데이트한 다음 기존 MATLAB 스크립트 yzfile.m에 저장합니다.

y = 15.7;
z = 3 * pi;
matlab.io.saveVariablesToScript('yzfile.m',{'y','z'},...
'SaveMode','update')

스크립트 파일의 구성을 지정하는 중에 변수 resistance를 업데이트하고 기존 MATLAB 스크립트 designData.m에 저장합니다.

resistance = [10 20.5 11 13.7 15.1 7.7];
matlab.io.saveVariablesToScript('designData.m','resistance',...
'SaveMode','Update','MaximumArraySize',5,...
'MaximumNestingLevel',5,'MaximumTextWidth',30)

2차원 슬라이스가 첫 번째 차원과 세 번째 차원을 따라 확장되도록, 3차원 배열 my3Dtable의 출력값에 대한 2차원 슬라이스를 지정합니다. 2차원 슬라이스를 MATLAB 스크립트 sliceData.m에 저장합니다.

level1 = [1 2; 3 4];
level2 = [5 6; 7 8];
my3Dtable( :, :, 1) = level1;
my3Dtable( :, :, 2) = level2;
matlab.io.saveVariablesToScript('sliceData.m','MultidimensionalFormat',[1,3])

그 결과 MATLAB 코드는 다음과 유사합니다.

level1 = ...
	[1 2;
	3 4];

level2 = ...
	[5 6;
	7 8];
my3Dtable = zeros(2, 2, 2);
my3Dtable(:,1,:) = ...
	[1 5;
	3 7];

my3Dtable(:,2,:) = ...
	[2 6;
	4 8];

표현식 autoL*과 일치하는 변수를 MATLAB 스크립트 autoVariables.m에 저장합니다.

matlab.io.saveVariablesToScript('autoVariables.m','RegExp','autoL*')

두 개의 변수 pq를 만든 다음 버전 7.3 MATLAB 스크립트 version73.m에 저장합니다.

p = 49;
q = 35.5;
matlab.io.saveVariablesToScript('version73.m','p','q',...
'MATFileVersion','v7.3')

MATLAB 스크립트에 저장된 변수를 변수 r1에 저장하고, MAT 파일에 저장된 변수를 변수 r2에 저장합니다.

[r1,r2] = matlab.io.saveVariablesToScript('mydata.m')
r1 = 

    'level1'
    'level2'
    'level3'
    'my3Dtable'


r2 = 

   Empty cell array: 0-by-1

입력 인수

모두 축소

변수를 저장할 MATLAB 스크립트의 이름으로, 파일 이름을 제공하는 문자열이나 파일 이름이 포함된 변수로 지정됩니다.

예: matlab.io.saveVariablesToScript('myVariables.m')

저장할 변수의 이름으로, string형이나 셀형 배열로 지정됩니다.

예: {'X','Y','Z'}

데이터형: char | cell

이름-값 쌍의 인수

선택적으로 Name,Value 인수가 쉼표로 구분되어 지정됩니다. 여기서 Name은 인수 이름이고 Value는 대응값입니다. Name은 따옴표 안에 표시해야 합니다. Name1,Value1,...,NameN,ValueN과 같이 여러 개의 이름-값 쌍의 인수를 어떤 순서로든 지정할 수 있습니다.

예: 'MaximumArraySize',500,'MATFileVersion','v4'는 저장할 배열 요소의 최대 개수가 500이며 MATLAB 버전 4 구문을 사용하도록 지정합니다.

MAT 파일을 저장하는 데 사용할 구문의 MATLAB 버전으로, 'MATFileVersion'과 함께 다음 버전 번호 중 하나가 쉼표로 구분되어 지정됩니다.

  • 'v4'

  • 'v6'

  • 'v7'

  • 'v7.3'

예: 'MATFileVersion','v6'

데이터형: char

저장할 배열 요소의 최대 개수로, 'MaximumArraySize'와 함께 1에서 10,000 사이의 정수가 쉼표로 구분되어 지정됩니다.

예: 'MaximumArraySize',1050

저장할 객체 수준 또는 배열 계층 구조의 최대 개수로, 'MaximumNestingLevel'과 함께 1에서 200 사이의 정수가 쉼표로 구분되어 지정됩니다.

예: 'MaximumNestingLevel',67

저장하는 동안의 텍스트 줄 바꿈 너비로, 'MaximumTextWidth'와 함께 32에서 256 사이의 정수가 쉼표로 구분되어 지정됩니다.

예: 'MaximumTextWidth',82

문자형, 논리형 또는 숫자형 데이터로 구성된 N차원 배열을 나타내는 2차원 슬라이스의 차원으로, 'MultidimensionalFormat'과 함께 다음 값 중 하나가 쉼표로 구분되어 지정됩니다.

  • 'rowvector' — 다차원 변수를 단일 행 벡터로 저장합니다.

  • integer cell array — 다차원 변수의 2차원 슬라이스를 저장합니다. 여기서 차원은 다음 조건을 모두 충족합니다.

    • 두 개의 양의 정수가 차원을 나타냅니다.

    • 두 개의 정수가 n차원 배열의 차원보다 작거나 같습니다.

    • 두 번째 정수가 첫 번째 정수보다 큽니다.

예: 'MultidimensionalFormat',[1,3]

일치시킬 정규 표현식으로, 'RegExp'와 함께 하나 이상의 문자열 표현식이 쉼표로 구분되어 지정됩니다.

예: 'RegExp','level*'

데이터형: char

MATLAB 스크립트를 저장할 모드로, SaveMode와 함께 다음 값 중 하나가 쉼표로 구분되어 지정됩니다.

  • 'create' — 변수를 새 MATLAB 스크립트에 저장합니다.

  • 'update' — MATLAB 스크립트에 이미 있는 변수만 업데이트합니다.

  • 'append' — MATLAB 스크립트에 이미 있는 변수를 업데이트하고 새 변수를 스크립트의 끝에 추가합니다.

예: 'SaveMode','Update'

출력 인수

모두 축소

MATLAB 스크립트에 저장된 변수로, 변수 이름으로 구성된 셀형 배열로 반환됩니다.

MAT 파일에 저장된 변수로, 변수 이름으로 구성된 셀형 배열로 반환됩니다.

제한 사항

  • matlab.io.saveVariablesToScript는 다음 변수를 MATLAB 스크립트나 MAT 파일에 저장하지 않습니다.

    • Java 객체

    • .NET 객체

    • Python 객체

  • matlab.io.saveVariablesToScript는 다음 변수를 MAT 파일에만 저장합니다.

    • MATLAB 객체

    • 함수 핸들

    • 익명 함수

Simulink®가 있는 경우 matlab.io.saveVariablesToScript를 사용하여 모델에서 사용되는 변수를 저장할 수 있습니다. 그러나 변수를 많이 저장하면 생성되는 MATLAB 파일에 긴 라인의 코드가 포함되어 실행 시간이 길어질 수 있습니다. 실행 시간이 길어지지 않도록 하려면 다음 대안을 고려해 보십시오.

  • Simulink.saveVars를 사용하는 대신 변수를 데이터 사전에 영구적으로 저장합니다. 데이터 사전은 변수 관리를 위한 추가 툴도 제공합니다. Determine Where to Store Variables and Objects for Simulink Models (Simulink) 항목을 참조하십시오.

  • save 함수를 사용하여 MAT 파일에 변수를 저장합니다.

R2014a에 개발됨