Объект параметров импорта для электронных таблиц
A SpreadsheetImportOptions позволяет указать, как MATLAB ® импортирует табличные данные из файлов электронных таблиц. Объект содержит свойства, управляющие процессом импорта данных, включая обработку ошибок и отсутствующих данных.
Можно создать SpreadsheetImportOptions путем использования либо detectImportOptions функции или spreadsheetImportOptions функция (описана здесь):
Использовать detectImportOptions для обнаружения и заполнения свойств импорта на основе содержимого электронной таблицы, указанной в filename.
opts = detectImportOptions(filename);
Использовать spreadsheetImportOptions для определения свойств импорта на основе требований импорта.
opts = spreadsheetImportOptions создает SpreadsheetImportOptions объект с одной переменной.
opts = spreadsheetImportOptions('NumVariables', создает объект с числом переменных, указанным в numVars)numVars.
numVars - Количество переменныхЧисло переменных, указанное как положительное скалярное целое число.
VariableNames - Имена переменныхИмена переменных, определяемые как массив ячеек символьных векторов или строковый массив. 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 к допустимым идентификаторам MATLAB.
'preserve' - Сохранение имен переменных, которые не являются допустимыми идентификаторами MATLAB, например имен переменных, содержащих пробелы и символы, не относящиеся к ASCII.
Начиная с R2019b имена переменных и строк могут содержать любые символы, включая пробелы и символы, не относящиеся к ASCII. Кроме того, они могут начинаться с любых символов, а не только букв. Имена переменных и строк не должны быть допустимыми идентификаторами MATLAB (согласно определению isvarname функция). Чтобы сохранить эти имена переменных и строк, задайте значение VariableNamingRule кому 'preserve'.
Типы данных: char | string
VariableTypes - Типы данных переменнойТип данных переменной, указанный как массив ячеек символьных векторов, или строковый массив, содержащий набор допустимых имен типов данных. 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около-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' | Замените отсутствующие данные на содержимое |
'error' | Остановите импорт и выведите сообщение об ошибке с отсутствующей записью и полем. |
'omitrow' | Опустить строки, содержащие отсутствующие данные. |
'omitvar' | Опустить переменные, содержащие отсутствующие данные. |
Пример: opts.MissingRule = 'omitrow';
Типы данных: char | string
ImportErrorRule - Процедура обработки ошибок импорта'fill' (по умолчанию) | 'error' | 'omitrow' | 'omitvar'Процедура обработки ошибок импорта, указанная как одно из значений в этой таблице.
| Правило ошибки импорта | Поведение |
|---|---|
'fill' | Замените данные, в которых произошла ошибка, на содержимое |
'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. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.