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 как, имена переменных, такие как имена varible, содержащие пробелы и символы non-ASCII, устанавливают PreserveVariableNames параметр к true.

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

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

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

Отметьте, чтобы сохранить имена переменных, заданные как разделенная запятой пара, состоящая из PreserveVariableNames и любой true, или false.

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

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

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

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

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

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

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

Типы данных: cell | single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char | string | categorical | datetime

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

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

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

Чтобы поддержать недопустимые идентификаторы MATLAB как, имена переменных, такие как имена varible, содержащие пробелы и символы non-ASCII, устанавливают PreserveVariableNames параметр к true.

Пример: 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';uint32

Типы данных: 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             13566  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             32332  table              

Советы

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

    • R2016b SpreadsheetImportOptions объект

    • R2018b — spreadsheetImportOptions функция

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

|