load

Загрузка переменных из файла в рабочую область

Описание

пример

load(filename) загружает данные из filename.

  • Если filename является MAT-файлом, затем load(filename) загружает переменные в MAT-файле в MATLAB® рабочей области.

  • Если filename является ASCII-файл, тогда load(filename) создает массив двойной точности, содержащий данные из файла.

пример

load(filename,variables) загружает указанные переменные из MAT-файла, filename.

пример

load(filename,'-ascii') лечит filename как ASCII-файл, независимо от расширения файла.

load(filename,'-mat') лечит filename как MAT-файл, независимо от расширения файла.

load(filename,'-mat',variables) загружает указанные переменные из filename.

пример

S = load(___) загружает данные в S, с использованием любого из входных параметров в предыдущей синтаксической группе.

  • Если filename является MAT-файлом, затем S является массивом структур.

  • Если filename является ASCII-файл, тогда S - массив двойной точности, содержащий данные из файла.

пример

load filename - команда форма синтаксиса. Команду форма требует меньшего количества специальных символов. Вам не нужно вводить круглые скобки или заключать вход в одинарные или двойные кавычки. Разделите входы пространствами вместо запятыми.

Например, чтобы загрузить файл с именем durer.mat, эти операторы эквивалентны:

load durer.mat      % command form
load('durer.mat')   % function form

Можно включать любое из входов, описанных в предыдущих синтаксисах. Например, чтобы загрузить переменную с именем X:

load durer.mat X       % command form
load('durer.mat','X')  % function form

Не используйте командную форму, когда любой из входов, таких как filename, являются переменными или строками.

Примеры

свернуть все

Загрузите все переменные из примера MAT-файла, gong.mat. Проверьте содержимое рабочей области до и после операции загрузки.

disp('Contents of workspace before loading file:')
whos

disp('Contents of gong.mat:')
whos('-file','gong.mat')

load('gong.mat')
disp('Contents of workspace after loading file:')
whos

Для загрузки переменных можно также использовать синтаксис команды. Очистите ранее загруженные переменные и повторите load операция.

clear y Fs

load gong.mat

Загрузка только переменных y из файла примера handel.mat. Если рабочая область уже содержит переменную y, а load операция перезаписывает его данными из файла.

load('handel.mat','y')

Вы также можете использовать синтаксис команды, чтобы загрузить переменную, y.

load handel.mat y

Просмотрите содержимое файла примера, accidents.mat.

whos -file accidents.mat
 Name              Size            Bytes  Class     Attributes

  datasources       3x1              2724  cell                
  hwycols           1x1                 8  double              
  hwydata          51x17             6936  double              
  hwyheaders        1x17             2758  cell                
  hwyidx           51x1               408  double              
  hwyrows           1x1                 8  double              
  statelabel       51x1              6596  cell                
  ushwydata         1x17              136  double              
  uslabel           1x1               138  cell                

Используйте синтаксис функции, чтобы загрузить все переменные с именами, не начинающимися с 'hwy', из файла.

load('accidents.mat', '-regexp', '^(?!hwy)...')

Кроме того, используйте синтаксис команды, чтобы загрузить те же переменные.

load accidents.mat -regexp '^(?!hwy)...'

Файл, durer.mat, содержит переменные X, caption, и map. Создайте массив ячеек с именами переменных для загрузки.

filename = 'durer.mat';
myVars = {'X','caption'};
S = load(filename,myVars{:})
S = struct with fields:
          X: [648x509 double]
    caption: [2x28 char]

Только переменные X и caption загружаются в массив структур, S.

Создайте ASCII-файл из нескольких 4-столбцовых матриц и загрузите данные обратно в массив двойной точности.

a = magic(4);
b = ones(2, 4) * -5.7;
c = [8 6 4 2];
save -ascii mydata.dat a b c
clear a b c

load mydata.dat -ascii

load создает массив типов double именованные mydata.

Просмотр информации о mydata.

whos mydata
  Name        Size            Bytes  Class     Attributes

  mydata      7x4               224  double              

Входные параметры

свернуть все

Имя файла, заданное как вектор символов или строковый скаляр. Если вы не задаете filename, а load функция ищет файл с именем matlab.mat.

Если filename не имеет расширения (то есть не имеет текста после периода), load ищет файл с именем filename.mat. Если filename имеет расширение, отличное от .mat, load функция обрабатывает файл как данные ASCII.

В зависимости от местоположения вашего файла, filename может принять одну из этих форм.

Местоположение

Форма

Текущая папка или папка в пути MATLAB

Укажите имя файла в filename.

Пример: 'myFile.mat'

Файл в папке

Если файл находится не в текущей папке или в папке на пути MATLAB, задайте полный или относительный путь в filename.

Пример: 'C:\myFolder\myFile.mat'

Пример: 'dataDir\myFile.mat'

Удаленные местоположения (только MAT-файлы версии 7.3)

Если файл хранится в удаленном местоположении, то filename должен быть равномерным указателем на ресурсы (URL) этой формы:

scheme_name://path_to_file/ my_file.mat

В зависимости от вашего удаленного местоположения, scheme_name может быть одним из значений в этой таблице.

Удаленное местоположениеscheme_name
Амазонки S3™s3
Windows Azure® Хранилище больших двоичных объектовwasb, wasbs
HDFS™hdfs

The load функция поддерживает загрузку только MAT-файлов версии 7.3 из удаленных местоположений.

Дополнительные сведения о настройке MATLAB для доступа к службе хранения данных в Интернете см. в разделе Работа с удаленными данными.

Пример: 's3://bucketname/path_to_file/my_file.mat'

При использовании командной формы load, вам не нужно заключать вход в одинарные кавычки. Однако, если filename содержит пространство, аргумент должен быть заключен в одинарные кавычки. Для примера, load 'filename withspace.mat'.

Примечание

Не используйте командную форму при filename - строка.

ASCII-файлы должны содержать прямоугольную таблицу чисел с равным количеством элементов в каждой строке. Разделитель файла (символ между элементами в каждой строке) может быть пустым, запятыми, точкой с запятой или вкладкой. Файл может содержать комментарии MATLAB (линии, которые начинаются со знака процента %).

Имена загружаемых переменных, заданные как один или несколько векторы символов или строковых скаляров. При использовании команды формы load, вам не нужно заключать вход в одинарные кавычки.

Примечание

Не используйте командную форму при variables - строка.

variables может находиться в одной из следующих форм.

Форма variables ВходПеременные для загрузки
var1,...,varNЗагрузите перечисленные переменные в виде отдельных векторов символов или строк.
Используйте '*' подстановочный символ, соответствующий шаблонам. Для примера, load('filename.mat','A*') или load filename.mat A* загружает все переменные в файл, имена которых начинаются с A.
'-regexp', expr1,...,exprNЗагрузите только переменные или поля, имена которых совпадают с регулярными выражениями, заданными в виде векторов символов или строк. Для примера, load('filename.mat','-regexp','^Mon','^Tues') или load filename.mat -regexp ^Mon ^Tues загружает только переменные в файл, имена которых начинаются с Mon или Tues.

Выходные аргументы

свернуть все

Загруженные переменные, возвращенные как массив структур, если filename является MAT-файлом.

Загруженные данные, возвращенные как m-by- n массив типов double, если filename является ASCII-файл. m равен количеству линий в файле, и n равен количеству значений в линии.

Ограничения

  • При работе с удаленными данными load не поддерживает обработку файла входа как ASCII-файл.

Алгоритмы

Если вы не задаете выход для load функция, MATLAB создает переменную, названную в честь загруженного файла (минус любое расширение файла). Для примера используйте команду

load mydata.dat

считывает данные в переменную с именем mydata.

Чтобы создать имя переменной, load предшествует любым начальным значениям подчеркивания или цифрам в filename с X и заменяет любые другие неалфавитные символы на символы нижнего подчеркивания. Для примера используйте команду

load 10-May-data.dat

создает переменную с именем X10_May_data.

Расширенные возможности

.
Представлено до R2006a