Создание параметров импорта на основе содержимого файла
находит таблицу в файле и возвращает ее параметры импорта. Можно изменить объект опций и использовать его с opts = detectImportOptions(filename)readtable для управления тем, как MATLAB ® импортирует табличные данные. Тип возвращаемых параметров зависит от расширения файла. Например, функция возвращает SpreadsheetImportOptions объект, если filename является файлом электронной таблицы. Однако функция возвращает DelimitedTextImportOptions или FixedWidthImportOptions объект, если filename является текстовым файлом и XMLImportOptions объект, если filename является XML-файлом.
находит таблицу в файле с помощью дополнительных параметров, заданных одним или несколькими opts = detectImportOptions(filename,Name,Value)Name,Value аргументы пары.
Определите параметры импорта для файла электронной таблицы, укажите переменные для импорта, а затем прочитайте данные.
Создание объекта параметров импорта из файла.
opts = detectImportOptions('patients.xls')opts =
SpreadsheetImportOptions with properties:
Sheet Properties:
Sheet: ''
Replacement Properties:
MissingRule: 'fill'
ImportErrorRule: 'fill'
Variable Import Properties: Set types by name using setvartype
VariableNames: {'LastName', 'Gender', 'Age' ... and 7 more}
VariableTypes: {'char', 'char', 'double' ... and 7 more}
SelectedVariableNames: {'LastName', 'Gender', 'Age' ... and 7 more}
VariableOptions: Show all 10 VariableOptions
Access VariableOptions sub-properties using setvaropts/getvaropts
VariableNamingRule: 'modify'
Range Properties:
DataRange: 'A2' (Start Cell)
VariableNamesRange: 'A1'
RowNamesRange: ''
VariableUnitsRange: ''
VariableDescriptionsRange: ''
To display a preview of the table, use preview
Измените объект параметров, чтобы указать, какие переменные требуется импортировать.
opts.SelectedVariableNames = {'Systolic','Diastolic'};Использовать readtable вместе с объектом options для импорта указанных переменных.
T = readtable('patients.xls',opts);
summary(T)Variables:
Systolic: 100x1 double
Values:
Min 109
Median 122
Max 138
Diastolic: 100x1 double
Values:
Min 68
Median 81.5
Max 99
Создайте параметры импорта, настройте типы данных для нескольких переменных, а затем прочитайте данные.
Создание объекта параметров импорта из текстового файла.
opts = detectImportOptions('airlinesmall.csv')opts =
DelimitedTextImportOptions with properties:
Format Properties:
Delimiter: {','}
Whitespace: '\b\t '
LineEnding: {'\n' '\r' '\r\n'}
CommentStyle: {}
ConsecutiveDelimitersRule: 'split'
LeadingDelimitersRule: 'keep'
TrailingDelimitersRule: 'ignore'
EmptyLineRule: 'skip'
Encoding: 'ISO-8859-1'
Replacement Properties:
MissingRule: 'fill'
ImportErrorRule: 'fill'
ExtraColumnsRule: 'addvars'
Variable Import Properties: Set types by name using setvartype
VariableNames: {'Year', 'Month', 'DayofMonth' ... and 26 more}
VariableTypes: {'double', 'double', 'double' ... and 26 more}
SelectedVariableNames: {'Year', 'Month', 'DayofMonth' ... and 26 more}
VariableOptions: Show all 29 VariableOptions
Access VariableOptions sub-properties using setvaropts/getvaropts
VariableNamingRule: 'modify'
Location Properties:
DataLines: [2 Inf]
VariableNamesLine: 1
RowNamesColumn: 0
VariableUnitsLine: 0
VariableDescriptionsLine: 0
To display a preview of the table, use preview
Осмотрите Type свойство переменных TaxiIn и TaxiOut.
getvaropts(opts,{'TaxiIn','TaxiOut'})ans =
1x2 TextVariableImportOptions array with properties:
Name
Type
FillValue
TreatAsMissing
QuoteRule
Prefixes
Suffixes
EmptyFieldRule
WhitespaceRule
Изменение типа переменных TaxiIn и TaxiOut кому double.
opts = setvartype(opts,{'TaxiIn','TaxiOut'},'double');Укажите подмножество переменных для импорта и проверки.
opts.SelectedVariableNames = {'TaxiIn','TaxiOut'};Используйте readtable вместе с объектом options для импорта выбранных переменных. Отображение сводки таблицы.
T = readtable('airlinesmall.csv',opts);
summary(T)Variables:
TaxiIn: 123523x1 double
Values:
Min 0
Median 5
Max 1451
NumMissing 37383
TaxiOut: 123523x1 double
Values:
Min 0
Median 13
Max 755
NumMissing 37364
Импорт текстовых данных как строкового типа данных путем задания параметров импорта.
Создайте объект параметров для файла.
opts = detectImportOptions('outages.csv');Укажите переменные для импорта с помощью readtable, а затем показать сводку. Тип данных выбранных переменных: char.
opts.SelectedVariableNames = {'Region','Cause'};
T = readtable('outages.csv',opts);
summary(T)Variables:
Region: 1468x1 cell array of character vectors
Cause: 1468x1 cell array of character vectors
Импорт текстовых данных в виде string тип данных, а затем создайте параметры импорта, указав TextType пара имя-значение.
opts = detectImportOptions('outages.csv','TextType','string');
Укажите переменные для импорта с помощью readtable, а затем показать сводку. Тип данных выбранных переменных теперь string.
opts.SelectedVariableNames = {'Region','Cause'};
T = readtable('outages.csv',opts);
summary(T)Variables:
Region: 1468x1 string
Cause: 1468x1 string
Зарегистрируйте пользовательский префикс пространства имен XML для существующего URL пространства имен во входном файле с помощью RegisteredNamespaces аргумент «имя-значение».
Создание XMLImportOptions из XML-файла. Укажите выражение XPath Street узел элемента как значение 'VariableSelectors'и зарегистрируйте префикс myPrefix к URL, принадлежащему Street узел.
opts = detectImportOptions("students.xml","RegisteredNamespaces", ["myPrefix","https://www.mathworks.com"],... "VariableSelectors","//myPrefix:Street")
opts =
XMLImportOptions with properties:
Replacement Properties:
MissingRule: "fill"
ImportErrorRule: "fill"
RepeatedNodeRule: "addcol"
Variable Import Properties: Set types by name using setvartype
VariableNames: "Street"
VariableTypes: "string"
SelectedVariableNames: "Street"
VariableOptions: Show all 1 VariableOptions
Access VariableOptions sub-properties using setvaropts/getvaropts
VariableNamingRule: "preserve"
Location Properties:
TableSelector: <missing>
RowSelector: <missing>
VariableSelectors: "//myPrefix:Street"
VariableUnitsSelector: <missing>
VariableDescriptionsSelector: <missing>
RowNamesSelector: <missing>
RegisteredNamespaces: ["myPrefix" "https://www.mathworks.com"]
Используйте readtable вместе с объектом options для импорта выбранной переменной.
T2 = readtable("students.xml",opts)T2=7×1 table
Street
___________________
"591 Spring Lane"
"4641 Pearl Street"
"30 Highland Road"
"3388 Moore Avenue"
"3388 Moore Avenue"
"22 Angie Drive"
"65 Decatur Lane"
filename - Имя файла для чтенияИмя считываемого файла, указанное как вектор символа или скаляр строки.
В зависимости от расположения файла, filename может принять одну из этих форм.
Местоположение | Форма | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Текущая папка или папка по пути MATLAB | Укажите имя файла в Пример:
| ||||||||
Файл в папке | Если файл находится не в текущей папке или в папке по пути MATLAB, укажите полный или относительный путь в Пример:
Пример:
| ||||||||
| URL-адрес в Интернете | Если файл указан как URL-адрес унифицированного ресурса Интернета, то Пример:
| ||||||||
Удаленное расположение | Если файл хранится в удаленном местоположении, то
На основе удаленного местоположения,
Дополнительные сведения см. в разделе Работа с удаленными данными. Пример:
|
Если filename включает расширение файла, затем detectImportOptions определяет формат файла из расширения. В противном случае необходимо указать 'FileType' пара имя-значение для указания типа файла.
detectImportOptions функция поддерживает следующие расширения файлов: .txt, .dat, .csv, .xls, .xlsb, .xlsm, .xlsx, .xltm, .xltx, .ods, и .xml.
Примечание
Расширения файлов .xlsb и .ods поддерживаются только на платформах с Excel ® для Windows ®.
Типы данных: char | string
Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.
'FileType','spreadsheet''FileType' - Тип файла'spreadsheet' | 'text' | 'delimitedtext' | 'fixedwidth' | 'xml'Тип файла, указанный как разделенная запятыми пара, состоящая из 'FileType' и одно из этих значений.
| Стоимость | Параметры импорта для файла |
|---|---|
'spreadsheet' | Вернуть a |
'text' | Вернуть a |
'delimitedtext' | Вернуть a |
'fixedwidth' | Вернуть a |
'xml' | Вернуть |
Используйте 'FileType' аргумент пары имя-значение при filename не включает расширение файла, или если расширение не является одним из следующих:
.txt, .dat, или .csv для текстовых файлов
.xls, .xlsb, .xlsm, .xlsx, .xltm, .xltx, или .ods для файлов электронных таблиц
.xml, для XML-файлов
Расширения файлов .xlsb и .ods поддерживаются только на платформах с Excel для Windows.
Пример: 'FileType','text'
Типы данных: char | string
'TextType' - Тип для импортированных текстовых данных 'char' (по умолчанию) | 'string'Тип для импортированных текстовых данных, указанный как разделенная запятыми пара, состоящая из 'TextType' и либо 'char' или 'string'.
'char' - Импорт текстовых данных в MATLAB в виде векторов символов.
'string' - Импорт текстовых данных в MATLAB в виде массивов строк.
Пример: 'TextType','char'
'DatetimeType' - Тип импортированных данных даты и времени'datetime' (по умолчанию) | 'text' | 'exceldatenum'(только файлы электронных таблиц)Тип импортированных данных даты и времени, указанный как разделенная запятыми пара, состоящая из 'DatetimeType' и одно из этих значений: 'datetime', 'text', или 'exceldatenum'. Стоимость 'exceldatenum' применима только для файлов электронных таблиц и недопустима для текстовых файлов.
| Стоимость | Тип импортированных данных даты и времени |
|---|---|
'datetime' | MATLAB Дополнительные сведения см. в разделе |
'text' | Если
|
'exceldatenum' | Серийные номера Excel Порядковый номер даты - это одно число, равное количеству дней от заданной ссылочной даты. Серийные номера Excel используют другую ссылочную дату, чем серийные номера MATLAB. Дополнительные сведения о датах Excel см. в разделе |
Типы данных: char | string
'ReadVariableNames' - Считать первую строку как имена переменныхtrue | falseИндикатор для считывания первой строки в виде имен переменных, указанный как пара, разделенная запятыми, состоящая из 'ReadVariableNames' и либо true или false. Если не указано, readtable автоматически обнаруживает наличие имен переменных.
Индикатор | Описание |
|---|---|
| Используется, когда первая строка области для чтения содержит имена переменных для таблицы. |
| Используется, когда первая строка считываемой области содержит данные в таблице. |
| неуказанный | Если не указано, функция импорта автоматически обнаруживает true или false и принимает соответствующие меры. |
Типы данных: logical
'VariableNamingRule' - Флаг для сохранения имен переменных'modify' (по умолчанию) | 'preserve'Флаг для сохранения имен переменных, указанный как разделенная запятыми пара, состоящая из VariableNamingRule и либо 'modify' или 'preserve'.
'modify' - Преобразовать недопустимые имена переменных (согласно определению isvarname к допустимым идентификаторам MATLAB.
'preserve' - Сохранение имен переменных, которые не являются допустимыми идентификаторами MATLAB, например имен переменных, содержащих пробелы и символы, не относящиеся к ASCII.
Начиная с R2019b имена переменных и строк могут содержать любые символы, включая пробелы и символы, не относящиеся к ASCII. Кроме того, они могут начинаться с любых символов, а не только букв. Имена переменных и строк не должны быть допустимыми идентификаторами MATLAB (согласно определению isvarname функция). Чтобы сохранить эти имена переменных и строк, задайте значение VariableNamingRule кому 'preserve'.
Типы данных: char | string
'ReadRowNames' - Индикатор для считывания первого столбца в виде имен строкfalse (по умолчанию) | trueИндикатор для считывания первого столбца в виде имен строк, указанный как пара, разделенная запятыми, состоящая из 'ReadRowNames' и либо false или true.
Индикатор | Описание |
|---|---|
| Используется, когда первый столбец считываемой области содержит данные, а не имена строк таблицы. |
| Используется, когда первый столбец считываемой области содержит имена строк таблицы. |
| неуказанный | Если не указано, функция импорта предполагает, что false. |
Типы данных: logical
'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
'ExpectedNumVariables' - Ожидаемое количество переменныхОжидаемое количество переменных, указанное как пара, разделенная запятыми, состоящая из 'ExpectedNumVariables' и положительное целое число. Если параметр не указан, функция импорта автоматически определяет количество переменных.
Типы данных: single | double
'NumHeaderLines' - Количество строк заголовкаКоличество строк заголовка в файле, указанное как разделенная запятыми пара, состоящая из 'NumHeaderLines' и положительное целое число. Если значение не указано, функция импорта автоматически определяет количество строк заголовка в файле.
Пример: 'NumHeaderLines',7
Типы данных: single | double
'Range' - Часть данных для чтенияЧасть данных для чтения из текстовых файлов или файлов электронных таблиц, указанная как пара, разделенная запятыми, состоящая из 'Range' и символьный вектор, строковый скалярный или числовой вектор в одной из этих форм.
Способы определения Range | Описание |
|---|---|
Начальная ячейка
| Укажите начальную ячейку для данных в виде символьного или строкового скалярного или двухэлементного числового вектора.
С помощью начальной ячейки функция импорта автоматически определяет объем данных, начиная импорт в начальной ячейке и заканчивая последней пустой строкой или нижним колонтитулом. Пример:
|
Прямоугольный диапазон
| Укажите точный диапазон для чтения с использованием прямоугольного диапазона в одной из этих форм.
Функция импорта считывает только данные, содержащиеся в указанном диапазоне. Все пустые поля в указанном диапазоне импортируются как отсутствующие ячейки. |
Диапазон строк или диапазон столбцов
| Укажите диапазон, определив начальную и конечную строки с помощью номеров строк Excel. Используя указанный диапазон строк, функция импорта автоматически обнаруживает экстент столбца, считывая от первого непустого столбца до конца данных, и создает одну переменную на столбец. Пример:
Можно также указать диапазон, определив начальный и конечный столбцы с помощью букв или цифр столбцов Excel. Используя указанный диапазон столбцов, функция импорта автоматически обнаруживает экстент строки, считывая от первой непустой строки до конца диапазона данных или нижнего колонтитула. Число столбцов в указанном диапазоне должно соответствовать числу, указанному в Пример:
|
Начальный номер строки
| Укажите первую строку, содержащую данные, используя положительный скалярный индекс строки. Используя указанный индекс строки, функция импорта автоматически определяет объем данных, считывая от указанной первой строки до конца диапазона данных или нижнего колонтитула. Пример: |
Именованный диапазон Excel
| В Excel можно создавать имена для идентификации диапазонов в электронной таблице. Например, можно выбрать прямоугольную часть электронной таблицы и вызвать ее Пример:
|
Не указан или пуст
| Если значение не указано, функция импорта автоматически обнаруживает используемый диапазон. Пример:
Примечание.Используемый диапазон относится к прямоугольной части электронной таблицы, которая фактически содержит данные. Функция импорта автоматически обнаруживает используемый диапазон путем обрезки всех начальных и конечных строк и столбцов, не содержащих данных. Текст, который является только пробелом, считается данными и фиксируется в пределах используемого диапазона. |
Типы данных: char | string | double
'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
'VariableUnitsRange' - Расположение переменных единиц'' пустой символьный массивРасположение переменных единиц, указанных как символьный вектор, строковый скаляр, положительное скалярное целое или пустой символьный массив. Определить VariableUnitsRange в качестве одного из значений в этой таблице.
| Указывается | Поведение |
|---|---|
| Укажите начальную ячейку для данных с помощью Excel Функция импорта считывает единицу измерения для каждой переменной в данных. Пример: |
Прямоугольный диапазон | Укажите точный диапазон для чтения с помощью прямоугольной формы диапазона, где Количество столбцов должно соответствовать числу, указанному в Пример: |
Диапазон строк | Укажите диапазон, определив начальную и конечную строки с помощью номеров строк Excel. Должно быть одной строкой. Пример: |
Числовой индекс | Укажите строку, содержащую единицы данных, используя положительный скалярный индекс строки. Пример: |
Не указан или пуст | Укажите, что нет переменных единиц. Пример: |
Типы данных: char | string | single | double
'VariableDescriptionsRange' - Расположение описаний переменных'' пустой символьный массивРасположение описаний переменных, указанных как символьный вектор, строковый скаляр, положительное скалярное целое или пустой символьный массив. Определить VariableDescriptionRange в качестве одного из значений в этой таблице.
| Указывается | Поведение |
|---|---|
| Укажите начальную ячейку для данных с помощью Excel Функция импорта считывает описание для каждой переменной в данных. Пример: |
Прямоугольный диапазон | Укажите точный диапазон для чтения с помощью прямоугольной формы диапазона, где Количество столбцов должно соответствовать числу, указанному в Пример: |
Диапазон строк | Укажите диапазон, определив начальную и конечную строки с помощью номеров строк Excel. Должно быть одной строкой. Пример: |
Числовой индекс | Укажите строку, содержащую описания, используя положительный скалярный индекс строки. Пример: |
Не указан или пуст | Укажите, что описания переменных отсутствуют. Пример: |
Типы данных: char | string | single | double
'Delimiter' - Символы разделителя полейСимволы разделителя полей в текстовом файле с разделителями, указанные как вектор символов, скаляр строк, массив ячеек векторов символов или массив строк.
Пример: 'Delimiter','|'
Пример: 'Delimiter',{';','*'}
Типы данных: char | string | cell
'LeadingDelimitersRule' - Процедура управления ведущими разделителями'keep' | 'ignore' | 'error'Процедура управления ведущими разделителями в текстовом файле с разделителями, указанном как одно из значений в этой таблице.
| Правило ведущих разделителей | Поведение |
|---|---|
'keep' | Сохранить разделитель. |
'ignore' | Игнорировать разделитель. |
'error' | Возвращает ошибку и прерывает операцию импорта. |
'TrailingDelimitersRule' - Процедура управления задними разделителями'keep' | 'ignore' | 'error'Процедура управления конечными разделителями в текстовом файле с разделителями, указанном как одно из значений в этой таблице.
| Правило ведущих разделителей | Поведение |
|---|---|
'keep' | Сохранить разделитель. |
'ignore' | Игнорировать разделитель. |
'error' | Возвращает ошибку и прерывает операцию импорта. |
'ConsecutiveDelimitersRule' - Процедура обработки последовательных разделителей'split' | 'join' | 'error'Процедура обработки последовательных разделителей в текстовом файле с разделителями, указанном как одно из значений в этой таблице.
| Правило последовательных разделителей | Поведение |
|---|---|
'split' | Разделите последовательные разделители на несколько полей. |
'join' | Соедините разделители в один. |
'error' | Возвращает ошибку и прерывает операцию импорта. |
Типы данных: char | string
'VariableWidths' - Ширина полей переменныхШирина полей переменных в текстовом файле фиксированной ширины, заданная как вектор положительных целых значений. Каждое положительное целое число в векторе соответствует количеству символов в поле, которое составляет переменную. VariableWidths содержит запись, соответствующую каждой переменной, указанной в VariableNames собственность.
'Whitespace' - Символы, рассматриваемые как пробелыСимволы, обрабатываемые как пробелы, обозначаемые как вектор символов или строковый скаляр, содержащий один или несколько символов.
Пример: 'Whitespace',' _'
Пример: 'Whitespace','?!.,'
'LineEnding' - Символы конца строки{'\n','\r','\r\n'} (по умолчанию) | символьный вектор | строковый скаляр | массив ячеек символьных векторов | строковый массивСимволы конца строки, указанные как вектор символов, скаляр строк, массив ячеек векторов символов или массив строк.
Пример: 'LineEnding','\n'
Пример: 'LineEnding','\r\n'
Пример: 'LineEnding',{'\b',':'}
Типы данных: char | string | cell
'Encoding' - Схема кодирования символов'' | 'UTF-8' | 'system' | 'ISO-8859-1' | 'windows-1251' | 'windows-1252' | ...Схема кодирования символов, связанная с файлом, заданная как разделенная запятыми пара, состоящая из 'Encoding' и 'system' или имя стандартной схемы кодирования символов.
Если кодировка не указана, функция использует автоматическое обнаружение набора символов для определения кодировки при чтении файла.
Пример: 'Encoding','system' использует системную кодировку по умолчанию.
Типы данных: char | string
'CommentStyle' - Стиль комментариевСтиль комментариев, заданный как символьный вектор, строковый скаляр, массив ячеек символьных векторов или строковый массив.
Например, чтобы игнорировать текст, следующий за знаком процента в той же строке, укажите CommentStyle как '%'.
Пример: 'CommentStyle',{'/*'}
Типы данных: char | string | cell
'DurationType' - Тип выходных данных данных длительности'duration' (по умолчанию) | 'text'Тип выходных данных длительности из текстовых файлов, указанный как разделенная запятыми пара, состоящая из 'DurationType' и либо 'duration' или 'text'.
| Стоимость | Тип для импортированных данных длительности |
|---|---|
'duration' | MATLAB Дополнительные сведения см. в разделе |
'text' | Если
|
Типы данных: char | string
'ExtraColumnsRule' - Процедура обработки дополнительных столбцов'addvars' | 'ignore' | 'wrap' | 'error'Процедура обработки дополнительных столбцов в данных, указанных как одно из значений в этой таблице.
| Правило дополнительных столбцов | Поведение |
|---|---|
'addvars' | Чтобы импортировать дополнительные столбцы, создайте новые переменные. Если есть ПРИМЕЧАНИЕ: Дополнительные столбцы импортируются как текст с типом данных |
'ignore' | Игнорировать дополнительные столбцы данных. |
'wrap' | Перенос дополнительных столбцов данных в новые записи. Это действие не изменяет число переменных. |
'error' | Вывод сообщения об ошибке и прекращение операции импорта. |
Типы данных: char | string
'TreatAsMissing' - Текст для интерпретации как отсутствующие данныеТекст для интерпретации как отсутствующие данные, заданный как символьный вектор, строковый скаляр, массив ячеек символьных векторов или строковый массив.
Когда функция импорта находит отсутствующие экземпляры, она использует спецификацию в MissingRule для определения соответствующего действия.
Пример: 'TreatAsMissing',{'NA','TBD'} предписывает функции импорта обрабатывать любое возникновение NA или TBD как отсутствующие поля.
Типы данных: char | string | cell
'DateLocale' - Языковой стандарт для чтения датЯзыковой стандарт для чтения дат, указанный как пара, разделенная запятыми, состоящая из 'DateLocale' и вектор символов или строковый скаляр формы , где:xx_YY
YY является верхним кодом ISO 3166-1 альфа-2, указывающим страну.
xx - строчный двухбуквенный код ISO 639-1, указывающий язык.
Список общих значений для языкового стандарта см. в разделе Locale аргумент пары имя-значение для datetime функция.
При использовании %D спецификатор формата для чтения текста как datetime значения, использование DateLocale для указания языкового стандарта, в котором функция импорта должна интерпретировать имена и сокращения месяца и дня недели.
При указании DateLocale аргумент в дополнение к opts параметры импорта, затем функция импорта использует указанное значение для DateLocale , переопределяя языковой стандарт, определенный в параметрах импорта.
Пример: 'DateLocale','ja_JP'
'ThousandsSeparator' - Символы, обозначающие группировку тысячСимволы, обозначающие группировку тысяч в числовых переменных, указанных как вектор символов или строковый скаляр. Тысячи символов группировки действуют как визуальные разделители, группируя число на каждые три значения места. Функция импорта использует символы в ThousandsSeparator для интерпретации импортируемых чисел.
Типы данных: char | string
'DecimalSeparator' - Символы, обозначающие десятичный разделительСимволы, указывающие десятичный разделитель в числовых переменных, определяемых как вектор символов или строковый скаляр. Функция импорта использует DecimalSeparator свойство для отличия целой части числа от десятичной части.
При преобразовании в целочисленные типы данных числа с десятичной частью округляются до ближайшего целого числа.
Типы данных: char | string
'TrimNonNumeric' - Удалить нечисловые символыfalse (по умолчанию) | trueУдаление нечисловых символов из числовой переменной, указанной как логическая true или false.
Типы данных: logical
'HexType' - Тип выходных данных шестнадцатеричных данных'auto' (по умолчанию) | 'text' | 'int8' | 'int16' | ...Тип выходных данных шестнадцатеричных данных, указанный как разделенная запятыми пара, состоящая из 'HexType' и одно из значений, перечисленных в таблице.
Входной файл представляет шестнадцатеричные значения в виде текста, используя либо 0x или 0X как префикс и символы 0-9, a-f, и A-F в виде цифр. (Прописные и строчные буквы обозначают одни и те же цифры - например,'0xf' и '0xF' оба представляют 15.)
Функция импорта преобразует шестнадцатеричные значения в тип данных, указанный значением 'HexType'.
Значение | Тип данных переменных выходной таблицы |
|---|---|
| тип данных обнаружен автоматически |
| неизмененный входной текст |
| 8-битное целое число, со знаком |
| 16-битное целое число, со знаком |
| 32-разрядное целое число, со знаком |
| 64-разрядное целое число, со знаком |
| 8-битное целое число, без знака |
| 16-битное целое число, без знака |
| 32-разрядное целое число, без знака |
| 64-разрядное целое число, без знака |
Пример: 'HexType','uint16' преобразует текст, представляющий шестнадцатеричные значения (например, '0xFF') для неподписанных 16-битных целых чисел (таких как 255) в выходной таблице.
Типы данных: char | string
'BinaryType' - Тип выходных данных двоичных данных'auto' (по умолчанию) | 'text' | 'int8' | 'int16' | ...Тип выходных данных двоичных данных, указанный как разделенная запятыми пара, состоящая из 'BinaryType' и одно из значений, перечисленных в таблице.
Входной файл представляет двоичные значения в виде текста, используя либо 0b или 0B как префикс и символы 0 и 1 в виде цифр.
Функция импорта преобразует двоичные значения в тип данных, указанный значением 'BinaryType'.
Значение | Тип данных переменных выходной таблицы |
|---|---|
| тип данных обнаружен автоматически |
| неизмененный входной текст |
| 8-битное целое число, со знаком |
| 16-битное целое число, со знаком |
| 32-разрядное целое число, со знаком |
| 64-разрядное целое число, со знаком |
| 8-битное целое число, без знака |
| 16-битное целое число, без знака |
| 32-разрядное целое число, без знака |
| 64-разрядное целое число, без знака |
Пример: 'BinaryType','uint16' преобразует текст, представляющий двоичные значения (например, '0b11111111') для неподписанных 16-битных целых чисел (таких как 255) в выходной таблице.
Типы данных: char | string
'ImportAttributes' - Импорт атрибутов1 или true (по умолчанию) | логический 0 или falseИмпорт атрибутов, указанных как разделенная запятыми пара, состоящая из 'ImportAttributes' и либо 1 (true) или 0 (false). При указании false, то функция чтения не будет импортировать атрибуты XML во входной файл как переменные в выходной таблице.
Пример: 'ImportAttributes',false
'AttributeSuffix' - суффикс атрибута'Attribute' (по умолчанию) | символьный вектор | строковый скалярсуффикс атрибута, указанный как пара, разделенная запятыми, состоящая из 'AttributeSuffix' и либо вектор символов, либо строковый скаляр. Этот аргумент указывает суффикс, который функция чтения добавляет ко всем переменным таблицы, соответствующим атрибутам во входном XML-файле. Если не указать 'AttributeSuffix', то функция чтения по умолчанию добавляет суффикс 'Attribute' ко всем именам переменных, соответствующим атрибутам во входном XML-файле.
Пример: 'AttributeSuffix','_att'
'RowNodeName' - Имя узла XML строки таблицыИмя XML-узла строки таблицы, указанное как разделенная запятыми пара, состоящая из 'RowNodeName' и либо вектор символов, либо строковый скаляр. Этот аргумент указывает имя узла XML, которое определяет строки выходной таблицы.
Пример: 'RowNodeName','XMLNodeName'
'RowSelector' - Выражение XPath строки таблицыВыражение XPath строки таблицы, указанное как вектор символов или скаляр строки, используемый функцией чтения для выбора отдельных строк выходной таблицы. Необходимо указать RowSelector как допустимое выражение XPath версии 1.0.
Пример: 'RowSelector','/RootNode/ChildNode'
'VariableNodeNames' - Имена узлов XML переменной таблицыИмена XML-узлов переменной таблицы, указанные как разделенная запятыми пара, состоящая из 'VariableNodeNames' и либо массив ячеек из символьных векторов, либо строковый массив. Этот аргумент указывает имя узла XML, которое функция чтения использует для идентификации узлов XML, которые будут считываться как переменные в выходной таблице.
Пример: 'VariableNodeNames',{'XMLNodeName1','XMLNodeName2'}
Пример: 'VariableNodeNames',"XMLNodeName"
Пример: 'VariableNodeNames',["XMLNodeName1","XMLNodeName2"]
'VariableSelectors' - Табличная переменная XPath-выраженияВыражения XPath табличной переменной, указанные как массив ячеек символьных векторов или строковый массив, используемый функцией чтения для выбора табличных переменных. Необходимо указать VariableSelectors как допустимые выражения XPath версии 1.0.
Пример: 'VariableSelectors',{'/RootNode/ChildNode'}
Пример: 'VariableSelectors',"/RootNode/ChildNode"
Пример: 'VariableSelectors',["/RootNode/ChildNode1","/RootNode/ChildNode2"]
'TableNodeName' - Имя узла XML таблицыИмя узла XML таблицы, указанное как разделенная запятыми пара, состоящая из 'TableNodeName' и либо вектор символов, либо строковый скаляр. Этот аргумент указывает узел в структуре ввода, который функция чтения должна считывать в таблицу.
Пример: 'TableNodeName','NodeName'
'TableSelector' - Выражение XPath табличных данныхВыражение XPath табличных данных, указанное как вектор символов или скаляр строки, используемый функцией чтения для выбора данных выходной таблицы. Необходимо указать TableSelector как допустимое выражение XPath версии 1.0.
Пример: 'TableSelector','/RootNode/ChildNode'
'VariableUnitsSelector' - Выражение XPath переменных единицПеременные единицы XPath, заданные как вектор символов или скаляр строки, используемый функцией чтения для выбора табличных переменных единиц. Необходимо указать VariableUnitsSelector как допустимое выражение XPath версии 1.0.
Пример: 'VariableUnitsSelector','/RootNode/ChildNode'
'VariableDescriptionsSelector' - Описание переменной выражение XPathВыражение XPath описаний переменных, указанное как вектор символов или скаляр строки, используемый функцией чтения для выбора описаний переменных таблицы. Необходимо указать VariableDescriptionsSelector как допустимое выражение XPath версии 1.0.
Пример: 'VariableDescriptionsSelector','/RootNode/ChildNode'
'RowNamesSelector' - Выражение XPath имен строк таблицыСтрока таблицы называет выражение XPath, указанное как вектор символов или скаляр строки, который функция чтения использует для выбора имен строк таблицы. Необходимо указать RowNamesSelector как допустимое выражение XPath версии 1.0.
Пример: 'RowNamesSelector','/RootNode/ChildNode'
'RepeatedNodeRule' - Процедура обработки повторяющихся узлов XML'addcol' (по умолчанию) | 'ignore' | 'error'Процедура обработки повторяющихся узлов XML в данной строке таблицы, указанная как 'addcol', 'ignore', или 'error'.
Правило повторяющегося узла | Поведение |
|---|---|
'addcol' | Добавление столбцов для повторяющихся узлов под заголовком переменной в таблице. Указание значения |
'ignore' | Пропустить импорт повторяющихся узлов. |
'error' | Вывод сообщения об ошибке и прекращение операции импорта. |
Пример: 'RepeatedNodeRule','ignore'
'RegisteredNamespaces' - Набор зарегистрированных префиксов пространства имен XMLНабор зарегистрированных префиксов пространства имен XML, указанный как пара, разделенная запятыми, состоящая из RegisteredNamespaces и массив префиксов. Функция чтения использует эти префиксы при оценке выражений XPath в XML-файле. Укажите префиксы пространства имен и связанные с ними URL-адреса в виде массива Nx2 строк. RegisteredNamespaces может использоваться при вычислении выражения XPath, указанного аргументом «имя-значение селектора», например StructSelector для readstruct, или VariableSelectors для readtable и readtimetable.
По умолчанию функция чтения автоматически обнаруживает префиксы пространства имен для регистрации для использования в вычислении XPath, но можно также зарегистрировать новые префиксы пространства имен с помощью RegisteredNamespaces аргумент «имя-значение». Можно зарегистрировать новый префикс пространства имен, если узел XML имеет URL-адрес пространства имен, но в XML-файле нет объявленного префикса пространства имен.
Например, вычислить выражение XPath в XML-файле с именем example.xml не содержит префикс пространства имен. Определить 'RegisteredNamespaces' как [“myprefix”, “https://www.mathworks.com”] для назначения префикса myprefix на URL-адрес https://www.mathworks.com.
T = readtable("example.xml", "VariableSelector", "/myprefix:Data",...
"RegisteredNamespaces", [“myprefix”, “https://www.mathworks.com”])Пример: 'RegisteredNamespaces',[“myprefix”, “https://www.mathworks.com”]
opts - Параметры импорта для файлаSpreadsheetImportOptions | DelimitedtextImportOptions | FixedWidthImportOptions | XMLImportOptionsПараметры импорта для указанного файла, возвращенные как SpreadsheetImportOptions, DelimitedTextImportOptions, FixedWidthImportOptions, или XMLImportOptions объект. Тип объекта options зависит от типа указанного файла. Для текстовых файлов (.txt, .dat, или .csv), detectImportOptions функция возвращает DelimitedTextImportOptions или FixedWidthImportOptions объект. Для файлов электронных таблиц (.xls, .xlsb, .xlsm, .xlsx, .xltm, .xltx, или .ods), detectImportOptions функция возвращает SpreadsheetImportOptions объект. Для XML-файлов (.xml), detectImportOptions возвращает XMLImportOptions объект.
Обновление значений свойств после создания объекта параметров импорта: использование точечных обозначений не рекомендуется для обновления свойств объекта параметров импорта, созданного detecImportOptions. При задании свойств с помощью точечных обозначений MATLAB повторно не обнаруживает все опции импорта для файла. Поэтому для обновления и повторного обнаружения всех свойств необходимо указать новые значения с помощью аргументов «имя-значение». Например, обновите значение для ConsecutiveDelimitersRule и повторно определите параметры импорта следующим образом.
opts = detectImportOptions(__,'ConsecutiveDelimitersRule','join')
Следующие синтаксисы XPath поддерживаются для аргументов «имя-значение селектора XPath», таких как RowSelector или VariableSelector.
Чтобы выбрать каждый узел, имя которого соответствует выбранному узлу, независимо от его расположения в документе, используйте "//myNode" синтаксис. Вы можете использовать "//myNode" чтобы опустить выражение XPath, предшествующее узлу, который требуется выбрать.
Чтобы прочитать один из нескольких одноранговых узлов под одним родительским узлом в файле, можно указать ChildNode[, где n]n соответствует одноранговому узлу, который требуется проиндексировать. Например, путь "/RootNode/ChildNode[2]" выбирает второе ChildNode элемент, родительский элемент которого RootNode.
Чтобы считать значение атрибута, принадлежащего узлу элемента во входном XML-файле, укажите @ перед именем атрибута. Например, "/RootNode/ChildNode[2]/@AttributeName" выбирает атрибут AttributeName относится ко второму ChildNode элемент, родительский элемент которого RootNode.
DelimitedTextImportOptions | FixedWidthImportOptions | readtable | SpreadsheetImportOptions | XMLImportOptions
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.