Чтение данных электронной таблицы Используя Инструмент для импорта

В этом примере показано, как импортировать данные из электронной таблицы в рабочую область с помощью Import Tool и также импортировать данные от буфера обмена.

Интерактивный выбор данных

На вкладке Home, в разделе Variable, нажимают Import Data . В качестве альтернативы в Браузере текущей папки, дважды кликните имя файла с расширением .xls, .xlsx, .xlsb, или .xlsm. Import Tool открывается.

Выберите данные, которые вы хотите импортировать. Например, данные в следующем рисунке соответствуют данным для трех вектор-столбцов. Можно отредактировать имя переменной во вкладке, и можно выбрать разделы, состоящие из нескольких несмежных участков, данных для той же переменной.

На вкладке Import, в разделе Output Type, выбор, как вы хотите, чтобы данные были импортированы. Опция, которую вы выбираете, диктует тип данных импортированных данных.

Выбранная опцияКак данные импортированы
Вектор-столбцыИмпортируйте каждый столбец выбранных данных как отдельный m- 1 вектор.
Числовая матрицаИмпортируйте выбранные данные как m- n числовой массив.
Массив строкИмпортируйте выбранные данные как m- n массив строк.
CellArrayИмпортируйте выбранные данные как массив ячеек, который может содержать несколько типов данных, таких как числовые данные и текст.
ТаблицаИмпортируйте выбранные данные как таблицу.

Если вы принимаете решение импортировать данные как матрицу или как числовые вектор-столбцы, инструмент подсвечивает любые нечисловые данные в рабочем листе. Каждый цвет подсветки соответствует предложенному правилу превратить совпадение данных в числовой массив. Например, можно заменить нечисловые значения на NaN. Кроме того, вы видите, как ваши данные будут импортированы, когда вы установите курсор на отдельные ячейки.

Можно добавить, удалить, переупорядочить или отредактировать правила, такие как изменение заменяющего значения от NaN к другому значению. Все правила применяются к импортированным данным только и не изменяют данные в файле. Задайте правила любое время, область значений включает нечисловые данные, и вы импортируете в матричные или числовые вектор-столбцы.

Любые ячейки, которые содержат #Error? соответствуйте ошибкам формулы в своем файле электронной таблицы, таким как деление на нуль. Import Tool рассматривает эти ячейки как нечисловые.

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

Для получения дополнительной информации о взаимодействии с Import Tool посмотрите этот ролик.

Импортирование данных из нескольких электронных таблиц

Если вы планируете выполнить ту же операцию импорта на нескольких файлах, можно сгенерировать код от Import Tool, чтобы облегчить повторять операцию. На всех платформах Import Tool может сгенерировать скрипт программы, который можно отредактировать и запустить, чтобы импортировать файлы. В системах Microsoft® Windows® с программным обеспечением Excel® Import Tool может сгенерировать функцию, что можно призвать к каждому файлу.

Например, предположите, что у вас есть набор электронных таблиц в текущей папке под названием myfile01.xlsx через myfile25.xlsx, и вы хотите импортировать ту же область значений данных, A2:G100, из первого рабочего листа в каждом файле. Сгенерируйте код для импорта всего набора файлов следующим образом:

  1. Откройте один из файлов в Import Tool.

  2. От кнопки Import Selection выберите Generate Function. Import Tool генерирует код, похожий на следующую выборку, и открывает код в Редакторе.

    function data = importfile(workbookFile, sheetName, range)
    %IMPORTFILE    Import numeric data from a spreadsheet
    ...
  3. Сохраните функцию.

  4. В отдельном программном файле или в командной строке, создайте for цикл, чтобы импортировать данные из каждой электронной таблицы в массив ячеек под названием myData:

    numFiles = 25;
    range = 'A2:G100';
    sheet = 1;
    myData = cell(1,numFiles);
    
    for fileNum = 1:numFiles
        fileName = sprintf('myfile%02d.xlsx',fileNum);
        myData{fileNum} = importfile(fileName,sheet,range);
    end

Каждая ячейка в myData содержит массив данных из соответствующего рабочего листа. Например, myData{1} содержит данные из первого файла, myfile01.xlsx.

Вставка данных от буфера обмена

В дополнение к импортированию данных в интерактивном режиме, можно также вставить данные об электронной таблице из буфера обмена в MATLAB®.

Во-первых, выберите и скопируйте свои данные об электронной таблице в Microsoft Excel, затем используйте один из следующих методов:

  • В строке заголовка браузера Рабочей области щелкните, и затем выберите Paste.

  • Откройте существующую переменную в редакторе Переменных, щелкните правой кнопкой, и затем выберите Paste Excel Data.

  • Вызовите uiimport -pastespecial.

Смотрите также

| | | |

Похожие темы