spreadsheetImportOptions

Объект параметров импорта для электронных таблиц

Описание

SpreadsheetImportOptions объект позволяет вам задать, как MATLAB® импортирует табличные данные из файлов электронной таблицы. Объект содержит свойства, которые управляют процессом импорта данных, включая обработку ошибок и недостающих данных.

Создание

Можно создать SpreadsheetImportOptions объект при помощи любого detectImportOptions функционируйте или spreadsheetImportOptions функция (описанный здесь):

  • Используйте detectImportOptions обнаружить и заполнить свойства импорта на основе содержимого электронной таблицы, заданной в filename.

    opts = detectImportOptions(filename);

  • Используйте spreadsheetImportOptions задавать свойства импорта на основе ваших требований импорта.

Описание

пример

opts = spreadsheetImportOptions создает SpreadsheetImportOptions объект с одной переменной.

пример

opts = spreadsheetImportOptions('NumVariables',numVars) создает объект с количеством переменных, заданных в numVars.

пример

opts = spreadsheetImportOptions(___,Name,Value) задает дополнительные свойства для SpreadsheetImportOptions объект с помощью одного или нескольких аргументов пары "имя-значение".

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

развернуть все

Количество переменных в виде положительного скалярного целого числа.

Свойства

развернуть все

Variable Properties

Имена переменных в виде массива ячеек из символьных векторов или массива строк. VariableNames свойство содержит имена, чтобы использовать при импорте переменных.

Если данные содержат N переменные, но никакие имена переменных заданы, затем VariableNames свойство содержит {'Var1','Var2',...,'VarN'}.

Чтобы поддержать недопустимые идентификаторы MATLAB как, имена переменных, такие как имена переменных, содержащие пробелы и символы non-ASCII, устанавливают значение VariableNamingRule к 'preserve'.

Пример: opts.VariableNames возвращает текущие (обнаруженные) имена переменных.

Пример: opts.VariableNames(3) = {'Height'} изменяет название третьей переменной к Height.

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

Отметьте, чтобы сохранить имена переменных в виде разделенной запятой пары, состоящей из VariableNamingRule и любой 'modify' или 'preserve'.

  • 'modify' — Преобразуйте недопустимые имена переменных (как определено isvarname функция) к допустимым идентификаторам MATLAB.

  • 'preserve' — Сохраните имена переменных, которые не являются допустимыми идентификаторами MATLAB, такими как имена переменных, которые включают символы non-ASCII и пробелы.

Начиная в R2019b, имена переменных и имена строки могут включать любые символы, включая символы non-ASCII и пробелы. Кроме того, они могут начать с любых символов, не только обозначает буквами. Переменная и имена строки не должны быть допустимыми идентификаторами MATLAB (как определено isvarname функция. Чтобы сохранить эти имена переменных и имена строки, установите значение VariableNamingRule к 'preserve'.

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

Тип данных переменной в виде массива ячеек из символьных векторов или массив строк, содержащий набор допустимых имен типов данных. VariableTypes свойство определяет типы данных использовать при импорте переменных.

Обновить VariableTypes свойство, используйте setvartype функция.

Пример: opts.VariableTypes возвращает текущие типы данных переменных.

Пример: opts = setvartype(opts,'Height',{'double'}) изменяет тип данных переменной Height к double.

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

SelectedVariableNames должно быть подмножество имен, содержавшихся в VariableNames свойство. По умолчанию, SelectedVariableNames содержит все имена переменных от VariableNames свойство, что означает, что все переменные импортируются.

Используйте SelectedVariableNames свойство импортировать только переменные интереса. Задайте подмножество переменных с помощью SelectedVariableNames свойство и использование readtable импортировать только то подмножество.

Чтобы поддержать недопустимые идентификаторы MATLAB как, имена переменных, такие как имена переменных, содержащие пробелы и символы non-ASCII, устанавливают значение VariableNamingRule к 'preserve'.

Пример: opts.SelectedVariableNames = {'Height','LastName'} выбирает только две переменные, Height и LastName, для операции импорта.

Пример: opts.SelectedVariableNames = [1 5] выбирает только две переменные, первую переменную и пятую переменную, для операции импорта.

Пример: T = readtable(filename,opts) возвращает таблицу, содержащую только переменные, заданные в SelectedVariableNames свойство opts объект.

Типы данных: uint16 | uint32 | uint64 | char | string | cell

Введите определенные переменные настройки импорта, возвращенные как массив переменных объектов настроек импорта. Массив содержит объект, соответствующий каждой переменной, заданной в VariableNames свойство. Каждый объект в массиве содержит свойства, которые поддерживают импорт данных с определенным типом данных.

Параметры переменной поддерживают эти типы данных: числовой, текст, logicaldatetime, или categorical.

Чтобы запросить ток (или обнаруженный) опции для переменной, используйте getvaropts функция.

Чтобы установить и настроить опции для переменной, используйте setvaropts функция.

Пример: opts.VariableOptions возвращает набор VariableImportOptions объекты, одно соответствие каждой переменной в данных.

Пример: getvaropts(opts,'Height') возвращает VariableImportOptions объект для Height переменная.

Пример: opts = setvaropts(opts,'Height','FillValue',0) устанавливает FillValue свойство для переменной Height к 0.

Location Properties

Покройте, чтобы читать из в виде пустого символьного массива, вектора символов или строкового скаляра, содержащего имя листа или положительное скалярное целое число, обозначающее индекс листа. На основе значения, заданного для Sheet свойство, функция импорта ведет себя как описано в таблице.

СпецификацияПоведение
'' (значение по умолчанию)Импортируйте данные от первого листа.
ИмяИмпортируйте данные с соответствующего имени листа, независимо от порядка листов в файле электронной таблицы.
Целое числоИмпортируйте данные от листа в положении, обозначенном целым числом, независимо от имен листа в файле электронной таблицы.

Типы данных: char | string | single | double

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

ЗаданныйПоведение

'Cell' или n

Запуск ячейки или стартовой строки

Задайте стартовую ячейку для данных, с помощью Excel® A1 обозначение. Например, A5 идентификатор для ячейки на пересечении столбца A и строка 5.

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

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

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

Пример: 'A5' или 5

'Corner1:Corner2'

Прямоугольная область значений

Укажите точный диапазон, чтобы считать использование прямоугольной формы области значений, где Corner1 и Corner2 два противостоящих угла, которые задают область, чтобы читать.

Функция импорта только считывает данные, содержавшиеся в заданной области. Любые пустые поля в заданной области импортируются как недостающие ячейки.

Количество столбцов должно совпадать с номером, заданным в NumVariables свойство.

Пример: 'A5:K50'

'Row1:Row2' или 'Column1:Column2'

Область значений строки или область значений столбца

Укажите диапазон путем идентификации начала и конечного использования строк номера строк Excel.

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

Пример: '5:500'

В качестве альтернативы укажите диапазон путем идентификации начала и конечного использования столбцов буквы столбца Excel или числа.

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

Количество столбцов в заданной области должно совпадать с номером, заданным в NumVariables свойство.

Пример: 'A:K'

[n1 n2; n3 n4;...]

Несколько областей значений строки

Укажите несколько диапазонов строки, чтобы читать с N- 2 массив, содержащий N различные области значений строки.

Допустимый массив нескольких областей значений строки должен:

  • Укажите диапазоны линии в увеличивающемся порядке, который является первым диапазоном строки, указанным в массиве, появляется в файле перед другими областями значений строки.

  • Содержите только неперекрывающиеся области значений строки.

Использование Inf только поддерживается, чтобы указать на последнюю область значений в числовом массиве, указывающем несколько диапазонов строки. Например, [1 3; 5 6; 8 Inf].

Пример: [1 3; 5 6; 8 Inf]

''

Незаданный или пустой

Не выбирайте данные.

Пример: ''

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

Местоположение строки называет в виде вектора символов, строкового скаляра, положительного скалярного целого числа или пустого символьного массива. Задайте RowNamesRange как одно из значений в этой таблице.

ЗаданныйПоведение

'Cell'

Задайте стартовую ячейку для данных, с помощью Excel A1 обозначение. Например, A5 идентификатор для ячейки на пересечении столбца A и строка 5.

Функция импорта идентифицирует имя для каждой переменной в данных.

Пример: 'A5'

'Corner1:Corner2'

Прямоугольная область значений

Укажите точный диапазон, чтобы считать использование прямоугольной формы области значений, где Corner1 и Corner2 два противостоящих угла, которые задают область, чтобы читать.

Количество строк содержится в RowNamesRange должен совпадать с количеством строк данных и областью значений, обозначенной RowNamesRange должен охватить только один столбец.

Пример: 'A5:A50'

'Row1:Row2'

Область значений строки

Укажите диапазон путем идентификации начала и конечного использования строк номера строк Excel.

Имена строки должны быть в отдельном столбце.

Пример: '5:50'

n

Индекс номера

Задайте столбец, содержащий имена строки с помощью индекса столбца положительной скалярной величины.

Пример 5

''

Незаданный или пустой

Укажите, что нет никаких имен строки.

Пример: ''

Типы данных: char | single | double

Местоположение имен переменных в виде вектора символов, строкового скаляра, положительного скалярного целого числа или пустого символьного массива. Задайте VariableNamesRange как одно из значений в этой таблице.

ЗаданныйПоведение

'Cell'

Задайте стартовую ячейку для данных, с помощью Excel A1 обозначение. Например, A5 идентификатор для ячейки на пересечении столбца A и строка 5.

Функция импорта читает имя для каждой переменной в данных.

Пример: 'A5'

'Corner1:Corner2'

Прямоугольная область значений

Укажите точный диапазон, чтобы считать использование прямоугольной формы области значений, где Corner1 и Corner2 два противостоящих угла, которые задают область, чтобы читать.

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

Пример: 'A5:K5'

'Row1:Row2'

Область значений строки

Укажите диапазон путем идентификации начала и конечного использования строк номера строк Excel.

Должна быть одна строка.

Пример: '5:5'

n

Индекс номера

Задайте строку, содержащую имена переменных с помощью индекса строки положительной скалярной величины.

Пример 5

''

Незаданный или пустой

Укажите, что нет никаких имен переменных.

Пример: ''

Типы данных: char | single | double

Местоположение описаний переменной в виде вектора символов, строкового скаляра, положительного скалярного целого числа или пустого символьного массива. Задайте VariableDescriptionRange как одно из значений в этой таблице.

ЗаданныйПоведение

'Cell'

Задайте стартовую ячейку для данных, с помощью Excel A1 обозначение. Например, A5 идентификатор для ячейки на пересечении столбца A и строка 5.

Функция импорта читает описание для каждой переменной в данных.

Пример: 'A5'

'Corner1:Corner2'

Прямоугольная область значений

Укажите точный диапазон, чтобы считать использование прямоугольной формы области значений, где Corner1 и Corner2 два противостоящих угла, которые задают область, чтобы читать.

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

Пример: 'A5:K5'

'Row1:Row2'

Область значений строки

Укажите диапазон путем идентификации начала и конечного использования строк номера строк Excel.

Должна быть одна строка.

Пример: '5:5'

n

Индекс номера

Задайте строку, содержащую описания с помощью индекса строки положительной скалярной величины.

Пример 5

''

Незаданный или пустой

Укажите, что нет никаких описаний переменной.

Пример: ''

Типы данных: char | string | single | double

Местоположение переменных модулей в виде вектора символов, строкового скаляра, положительного скалярного целого числа или пустого символьного массива. Задайте VariableUnitsRange как одно из значений в этой таблице.

ЗаданныйПоведение

'Cell'

Задайте стартовую ячейку для данных, с помощью Excel A1 обозначение. Например, A5 идентификатор для ячейки на пересечении столбца A и строка 5.

Функция импорта читает модуль для каждой переменной в данных.

Пример: 'A5'

'Corner1:Corner2'

Прямоугольная область значений

Укажите точный диапазон, чтобы считать использование прямоугольной формы области значений, где Corner1 и Corner2 два противостоящих угла, которые задают область, чтобы читать.

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

Пример: 'A5:K5'

'Row1:Row2'

Область значений строки

Укажите диапазон путем идентификации начала и конечного использования строк номера строк Excel.

Должна быть одна строка.

Пример: '5:5'

n

Индекс номера

Задайте строку, содержащую модули данных с помощью индекса строки положительной скалярной величины.

Пример 5

''

Незаданный или пустой

Укажите, что нет никаких переменных модулей.

Пример: ''

Типы данных: char | string | single | double

Заменяющие правила

Процедура, чтобы управлять недостающими данными в виде одного из значений в этой таблице.

MissingRule Поведение
'fill'

Замените недостающие данные на содержимое FillValue свойство.

FillValue свойство задано в VariableImportOptions объект переменной импортируется. Для получения дополнительной информации о доступе к FillValue свойство, смотрите getvaropts.

'error'Прекратите импортировать и отобразите сообщение об ошибке, показывающее недостающую запись и поле.
'omitrow'Не используйте строки, которые содержат недостающие данные.
'omitvar'Не используйте переменные, которые содержат недостающие данные.

Пример: opts.MissingRule = 'omitrow';

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

Процедура, чтобы обработать ошибки импорта в виде одного из значений в этой таблице.

ImportErrorRule Поведение
'fill'

Замените данные, где ошибка произошла с содержимым FillValue свойство.

FillValue свойство задано в VariableImportOptions объект переменной импортируется. Для получения дополнительной информации о доступе к FillValue свойство, смотрите getvaropts.

'error'Прекратите импортировать и отобразите сообщение об ошибке, показывающее вызывающую ошибку запись и поле.
'omitrow'Не используйте строки, где ошибки происходят.
'omitvar'Не используйте переменные, где ошибки происходят.

Пример: opts.ImportErrorRule = 'omitvar';

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

Функции объекта

getvaroptsПолучите переменные настройки импорта
setvaroptsУстановите переменные настройки импорта
setvartypeУстановите типы данных переменных
previewПредварительный просмотр восьми строк из файла с помощью параметров импорта

Примеры

свернуть все

Создайте объект настроек импорта считать одну переменную из файла patients.xls.

Инициализируйте SpreadsheetImportOptions возразите, задайте имя переменной, тип переменной и данные стартовая ячейка. Затем используйте preview функция с настройками импорта возражает, чтобы предварительно просмотреть данные.

opts = spreadsheetImportOptions; 
opts.VariableNames = 'LastName';
opts.VariableTypes = 'categorical';
opts.DataRange = 'A2';
preview('patients.xls',opts)
ans=8×1 table
    LastName
    ________

    Smith   
    Johnson 
    Williams
    Jones   
    Brown   
    Davis   
    Miller  
    Wilson  

Импортируйте переменную из файла.

oneVar = readtable('patients.xls',opts);
whos oneVar
  Name          Size            Bytes  Class    Attributes

  oneVar      100x1             12709  table              

Создайте объект настроек импорта считать несколько переменных из patients.xls.

На основе содержимого вашего файла задайте количество переменных, имен переменных, тип переменных и данных стартовое местоположение.

numVars = 7;
varNames = {'LastName','Gender','Age','Location','Height','Weight','Smoker'} ;
varTypes = {'char','categorical','int32','char','double','double','logical'} ;
dataStartLoc = 'A2';

Инициализируйте объект opts настроек импорта использование spreadsheetImportOptions функционируйте и ваша переменная информация.

opts = spreadsheetImportOptions('NumVariables',numVars,...
                                'VariableNames',varNames,...
                                'VariableTypes',varTypes,...
                                'DataRange', dataStartLoc); 

Предварительно просмотрите данные с помощью preview функция с настройками импорта.

preview('patients.xls',opts)
ans=8×7 table
      LastName      Gender    Age              Location               Height    Weight    Smoker
    ____________    ______    ___    _____________________________    ______    ______    ______

    {'Smith'   }    Male      38     {'County General Hospital'  }      71       176      true  
    {'Johnson' }    Male      43     {'VA Hospital'              }      69       163      false 
    {'Williams'}    Female    38     {'St. Mary's Medical Center'}      64       131      false 
    {'Jones'   }    Female    40     {'VA Hospital'              }      67       133      false 
    {'Brown'   }    Female    49     {'County General Hospital'  }      64       119      false 
    {'Davis'   }    Female    46     {'St. Mary's Medical Center'}      68       142      false 
    {'Miller'  }    Female    33     {'VA Hospital'              }      64       142      true  
    {'Wilson'  }    Male      40     {'VA Hospital'              }      68       180      false 

Импортируйте данные с помощью readtable.

T = readtable('patients.xls',opts);
whos T
  Name        Size            Bytes  Class    Attributes

  T         100x7             30563  table              

Советы

  • Введенный в:

    • R2016b SpreadsheetImportOptions объект

    • R2018b — spreadsheetImportOptions функция

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

|

Для просмотра документации необходимо авторизоваться на сайте