Объект настроек импорта для электронных таблиц
A SpreadsheetImportOptions
позволяет вам задать, как MATLAB® импортирует табличные данные из файлов электронной таблицы. Объект содержит свойства, которые управляют процессом импорта данных, включая обработку ошибок и недостающих данных.
Можно создать SpreadsheetImportOptions
объект при помощи detectImportOptions
функцию или spreadsheetImportOptions
функция (описанная здесь):
Использование detectImportOptions
обнаружение и заполнение свойств импорта на основе содержимого электронной таблицы, указанной в filename
.
opts = detectImportOptions(filename);
Использование spreadsheetImportOptions
для определения свойств импорта на основе ваших требований к импорту.
opts = spreadsheetImportOptions
создает SpreadsheetImportOptions
объект с одной переменной.
opts = spreadsheetImportOptions('NumVariables',
создает объект с количеством переменных, заданным в numVars
)numVars
.
numVars
- Количество переменныхКоличество переменных, заданное как положительное скалярное целое число.
VariableNames
- Имена переменныхИмена переменных, заданные как массив ячеек из векторов символов или строковых массивов. The VariableNames
свойство содержит имена, используемые при импорте переменных.
Если данные содержат N
переменные, но имена переменных не заданы, затем VariableNames
свойство содержит {'Var1','Var2',...,'VarN'}
.
Чтобы поддержать недопустимые идентификаторы MATLAB в качестве имен переменных, таких как имена переменных, содержащие пространства и символы, отличные от ASCII, задайте значение VariableNamingRule
на 'preserve'
.
Пример: opts.VariableNames
возвращает текущие (обнаруженные) имена переменных.
Пример: opts.VariableNames(3) = {'Height'}
изменяет имя третьей переменной на Height
.
Типы данных: char
| string
| cell
VariableNamingRule
- Флаг для сохранения имен переменных'modify'
(по умолчанию) | 'preserve'
Флаг для сохранения имен переменных, заданный как разделенная разделенными запятой парами, состоящая из VariableNamingRule
и любой из них 'modify'
или 'preserve'
.
'modify'
- Преобразуйте недопустимые имена переменных (как определено isvarname
function) для действительных идентификаторов MATLAB.
'preserve'
- Сохраните имена переменных, которые не являются допустимыми идентификаторами MATLAB, такими как имена переменных, которые включают пространства и символы, отличные от ASCII.
Начиная с R2019b, имена переменных и имена строк могут включать любые символы, включая пространства и символы, отличные от ASCII. Кроме того, они могут начинаться с любых символов, а не только букв. Переменная и имена строк не должны быть допустимыми идентификаторами MATLAB (как определяется isvarname
функция). Чтобы сохранить эти имена переменных и имена строк, задайте значение VariableNamingRule
на 'preserve'
.
Типы данных: char
| string
VariableTypes
- Типы данных переменнойТип данных переменной, заданный как массив ячеек из векторов символов или строковые массивы, содержащий набор допустимых имен типов данных. The VariableTypes
свойство определяет типы данных, которые будут использоваться при импорте переменных.
Как обновить VariableTypes
свойство, используйте setvartype
функция.
Пример: opts.VariableTypes
возвращает текущие типы данных переменных.
Пример: opts = setvartype(opts,'Height',{'double'})
изменяет тип данных переменной Height
на double
.
SelectedVariableNames
- Подмножество переменных для импортаПодмножество переменных для импорта, заданное как вектор символов, строковый скаляр, массив ячеек векторов символов, строковые массивы или массив числовых индексов.
SelectedVariableNames
должен быть подмножеством имен, содержащихся в VariableNames
свойство. По умолчанию SelectedVariableNames
содержит все имена переменных из VariableNames
свойство, что означает, что все переменные импортируются.
Используйте SelectedVariableNames
свойство для импорта только интересующих переменных. Задайте подмножество переменных, используя SelectedVariableNames
свойство и использование readtable
для импорта только этого подмножества.
Чтобы поддержать недопустимые идентификаторы MATLAB в качестве имен переменных, таких как имена переменных, содержащие пространства и символы, отличные от 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
VariableOptions
- Введите конкретные настройки импорта переменныхВведите конкретные настройки импорта переменных, возвращенные как массив объектов настроек импорта переменных. Массив содержит объект, соответствующий каждой переменной, заданной в VariableNames
свойство. Каждый объект в массиве содержит свойства, поддерживающие импорт данных с определенным типом данных.
Опции переменной поддерживают следующие типы данных: число, текст, logical
, datetime
, или categorical
.
Чтобы запросить текущие (или обнаруженные) опции для переменной, используйте getvaropts
функция.
Чтобы задать и настроить опции для переменной, используйте setvaropts
функция.
Пример: opts.VariableOptions
возвращает набор VariableImportOptions
объекты, по одному, соответствующий каждой переменной в данных.
Пример: getvaropts(opts,'Height')
возвращает VariableImportOptions
объект для Height
переменная.
Пример: opts = setvaropts(opts,'Height','FillValue',0)
устанавливает FillValue
свойство для переменной Height
на 0
.
Sheet
- Лист для чтения с''
пустой символьный массив (по умолчанию) | вектор символов | строковый скаляр | положительное скалярное целое числоЛист для чтения, заданный как пустой символьный массив, вектор символов или строковый скаляр, содержащий имя листа, или положительное скалярное целое число, обозначающее индекс листа. На основе значения, заданного для Sheet
свойство, функция импорта ведет себя так, как описано в таблице.
Спецификация | Поведение |
---|---|
'' (по умолчанию) | Импортируйте данные с первого листа. |
Имя | Импортируйте данные из соответствующего имени листа независимо от порядка листов в файле электронной таблицы. |
Целое число | Импортируйте данные из листа в положение, обозначенное целым числом, независимо от имен листов в файле электронной таблицы. |
Типы данных: char
| string
| single
| double
DataRange
- Расположение данныхРасположение импортируемых данных, заданное как вектор символов, строковый скаляр, массив ячеек из векторов символов, строковые массивы, положительное скалярное целое число или N
-by- 2
массив положительных скалярных целых чисел. Задайте DataRange
использование одной из этих форм.
Задается как | Поведение |
---|---|
Стартовая камера или стартовая строка | Укажите стартовую камеру для данных, используя Excel® Используя стартовую камеру, функция импорта автоматически обнаруживает степень данных, начав импорт в стартовой камере и закончив в последней пустой области значений строки или нижнего колонтитула. Кроме того, укажите первую строку, содержащую данные, используя положительный скалярный индекс строки. Используя указанный индекс строки, функция импорта автоматически обнаруживает степень данных, считывая из указанной первой строки в конец данных или нижнего колонтитула. Пример: |
Прямоугольная область значений | Укажите точную область значений для чтения с помощью прямоугольной формы области значений, где Функция импорта считывает только данные, содержащиеся в заданной области. Все пустые поля в заданной области импортируются как отсутствующие камеры. Количество столбцов должно совпадать с количеством, указанным в Пример: |
Область значений строк или область значений столбцов | Задайте область значений путем идентификации начальной и конечной строк с помощью номеров строк Excel. Используя указанную область значений строк, функция импорта автоматически обнаруживает экстент столбца, считывая из первого непустого столбца в конец данных, и создает по одной переменной на столбец. Пример: Кроме того, укажите область значений путем идентификации начального и конечного столбцов с помощью букв или цифр столбца Excel. Используя заданную область значений столбцов, функция импорта автоматически обнаруживает объем строки, считывая из первой непустой строки в конец данных или нижнего колонтитула. Количество столбцов в заданной области должно совпадать с количеством, заданным в Пример: |
Несколько области значений строк | Задайте несколько области значений строк для чтения с Допустимый массив из нескольких областей значений строк должен:
Использование Пример: |
Не заданные или пустые | Не извлекайте никаких данных. Пример: |
Типы данных: char
| string
| cell
| single
| double
RowNamesRange
- Расположение имен строк''
пустой символьный массивРасположение имен строк, заданных как вектор символов, строковый скаляр, положительное скалярное целое число или пустой символьный массив. Задайте RowNamesRange
как одно из значений в этой таблице.
Задается как | Поведение |
---|---|
| Укажите стартовую камеру для данных, используя Excel Функция импорта определяет имя для каждой переменной в данных. Пример: |
Прямоугольная область значений | Укажите точную область значений для чтения с помощью прямоугольной формы области значений, где Количество строк, содержащихся в Пример: |
Область значений строк | Укажите область значений путем идентификации начальной и конечной строк с помощью номеров строк Excel. Имена строк должны быть в одном столбце. Пример: |
Индекс числа | Укажите столбец, содержащий имена строк, используя положительный скалярный индекс столбца. Пример: |
Не заданные или пустые | Указать, что имена строк отсутствуют. Пример: |
Типы данных: char
| single
| double
VariableNamesRange
- Расположение имен переменных''
пустой символьный массивРасположение имен переменных, заданное как вектор символов, строковый скаляр, положительное скалярное целое число или пустой символьный массив. Задайте VariableNamesRange
как одно из значений в этой таблице.
Задается как | Поведение |
---|---|
| Укажите стартовую камеру для данных, используя Excel Функция импорта считывает имя для каждой переменной в данных. Пример: |
Прямоугольная область значений | Укажите точную область значений для чтения с помощью прямоугольной формы области значений, где Количество столбцов должно совпадать с количеством, указанным в Пример: |
Область значений строк | Укажите область значений путем идентификации начальной и конечной строк с помощью номеров строк Excel. Должна быть одна строка. Пример: |
Индекс числа | Задайте строку, содержащую имена переменных, используя положительный скалярный индекс строки. Пример: |
Не заданные или пустые | Укажите, что имен переменных нет. Пример: |
Типы данных: char
| single
| double
VariableDescriptionsRange
- Расположение описаний переменных''
пустой символьный массивРасположение описаний переменных, заданное как вектор символов, строковый скаляр, положительное скалярное целое число или пустой символьный массив. Задайте VariableDescriptionRange
как одно из значений в этой таблице.
Задается как | Поведение |
---|---|
| Укажите стартовую камеру для данных, используя Excel Функция импорта считывает описание для каждой переменной в данных. Пример: |
Прямоугольная область значений | Укажите точную область значений для чтения с помощью прямоугольной формы области значений, где Количество столбцов должно совпадать с количеством, указанным в Пример: |
Область значений строк | Укажите область значений путем идентификации начальной и конечной строк с помощью номеров строк Excel. Должна быть одна строка. Пример: |
Индекс числа | Задайте строку, содержащую описания, используя положительный скалярный индекс строки. Пример: |
Не заданные или пустые | Укажите, что описание переменной отсутствует. Пример: |
Типы данных: char
| string
| single
| double
VariableUnitsRange
- Расположение переменных модулей''
пустой символьный массивРасположение переменных модулей виде вектора символов, строкового скаляра, положительного скалярного целого числа или пустого символьного массива. Задайте VariableUnitsRange
как одно из значений в этой таблице.
Задается как | Поведение |
---|---|
| Укажите стартовую камеру для данных, используя Excel Функция импорта считывает модуль для каждой переменной в данных. Пример: |
Прямоугольная область значений | Укажите точную область значений для чтения с помощью прямоугольной формы области значений, где Количество столбцов должно совпадать с количеством, указанным в Пример: |
Область значений строк | Укажите область значений путем идентификации начальной и конечной строк с помощью номеров строк Excel. Должна быть одна строка. Пример: |
Индекс числа | Задайте строку, содержащую модули данных, используя положительную скалярную величину индекс строки. Пример: |
Не заданные или пустые | Укажите, что переменных модулей нет. Пример: |
Типы данных: char
| string
| single
| double
MissingRule
- Процедура управления отсутствующими данными'fill'
(по умолчанию) | 'error'
| 'omitrow'
| 'omitvar'
Процедура управления отсутствующими данными, заданная в качестве одного из значений в этой таблице.
Отсутствующее правило | Поведение |
---|---|
'fill' | Замените отсутствующие данные на содержимое The |
'error' | Остановите импорт и отобразите сообщение об ошибке, показывающее отсутствующие запись и поле. |
'omitrow' | Опускать строки, которые содержат отсутствующие данные. |
'omitvar' | Опускайте переменные, которые содержат отсутствующие данные. |
Пример: opts.MissingRule = 'omitrow';
Типы данных: char
| string
ImportErrorRule
- Процедура обработки ошибок импорта'fill'
(по умолчанию) | 'error'
| 'omitrow'
| 'omitvar'
Процедура обработки ошибок импорта, заданная как одно из значений в этой таблице.
Правило импорта ошибок | Поведение |
---|---|
'fill' | Замените данные, в которых произошла ошибка, содержимым The |
'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
функция
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.