exponenta event banner

matlab.io.saveVariablesToScript

Сохранение переменных рабочей области в сценарии MATLAB

Описание

пример

matlab.io.saveVariablesToScript(filename) сохраняет переменные в текущей рабочей области в сценарии MATLAB ® с именемfilename.m. Имя файла может включать .m суффикс. Если он не включен, функция добавляет его при создании файла.

Переменные, для которых MATLAB не может создать код, сохраняются в MAT-файле с именем filename.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')

Создайте две переменные, a и bи сохраните их в существующем сценарии MATLAB abfile.m.

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

Обновить и сохранить две переменные, y и z, к существующему сценарию 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-D для вывода массива 3-D my3Dtable, так что 2-D срез расширяется вдоль первого и третьего размеров. Сохранение фрагмента 2-D в сценарии 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*')

Создайте две переменные, p и qи сохраните их в сценарии MATLAB версии 7.3 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')

Имя сохраняемых переменных, указанное как строка или массив ячеек.

Пример: {'X','Y','Z'}

Типы данных: char | cell

Аргументы пары «имя-значение»

Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

Пример: 'MaximumArraySize',500,'MATFileVersion','v4' указывает, что максимальное число сохраняемых элементов массива равно 500 с использованием синтаксиса MATLAB версии 4.

Версия MATLAB, синтаксис которой используется для сохранения MAT-файлов, заданная как разделенная запятыми пара, состоящая из 'MATFileVersion' и один из следующих номеров версий:

  • 'v4'

  • 'v6'

  • 'v7'

  • 'v7.3'

Пример: 'MATFileVersion','v6'

Типы данных: char

Максимальное количество сохраняемых элементов массива, указанное как пара, разделенная запятыми, состоящая из 'MaximumArraySize' и целое число в диапазоне от 1 до 10000.

Пример: 'MaximumArraySize',1050

Максимальное число сохраняемых уровней объектов или иерархий массивов, указанных как разделенная запятыми пара, состоящая из 'MaximumNestingLevel' и целое число в диапазоне от 1 до 200.

Пример: 'MaximumNestingLevel',67

Ширина обтекания текстом во время сохранения, указанная как разделенная запятыми пара, состоящая из 'MaximumTextWidth' и целое число в диапазоне от 32 до 256.

Пример: 'MaximumTextWidth',82

Размеры фрагментов 2-D, которые представляют n-D массивы символов, логики или числовых данных, указанные как пара, разделенная запятыми, состоящая из 'MultidimensionalFormat' и одно из этих значений:

  • 'rowvector' - сохранение многомерных переменных в виде вектора одной строки.

  • integer cell array - сохранить 2-D фрагмент многомерных переменных, где размеры удовлетворяют всем следующим критериям:

    • Два положительных целых числа представляют измерения.

    • Два целых числа меньше или равны размерам n-D массива.

    • Второе целое число больше первого.

Пример: '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 может содержать много строк кода и занимать много времени. Во избежание длительного времени выполнения рассмотрим следующие альтернативы:

Представлен в R2014a