detectImportOptions

Создайте настройки импорта на основе содержимого файла

Описание

пример

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 наряду с объектом опции для импорта заданных переменных.

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 функция вместе с объектом опции для импорта выбранных переменных. Отображение сводных данных по таблице.

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 функция вместе с объектом опции для импорта выбранной переменной.

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 может принять одну из этих форм.

Местоположение

Форма

Текущая папка или папка в пути MATLAB

Укажите имя файла в filename.

Пример: 'myFile.txt'

Файл в папке

Если файл находится не в текущей папке или в папке на пути MATLAB, задайте полное или относительное имя пути в filename.

Пример: 'C:\myFolder\myFile.xlsx'

Пример: '\imgDir\myFile.txt'

URL-адрес Интернета

Если файл задан как однородный интернет-локатор ресурсов (URL), то filename должен содержать тип протокола 'http://' или 'https://'.

Пример: 'http://hostname/path_to_file/my_data.csv'

Удаленное местоположение

Если файл хранится в удаленном местоположении, то filename должен содержать полный путь к файлу, указанному в форме:

scheme_name://path_to_file/ my_file.ext

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

Удаленное местоположениеscheme_name
Амазонки S3™s3
Windows Azure® Хранилище больших двоичных объектовwasb, wasbs
HDFS™hdfs

Для получения дополнительной информации см. раздел Работа с удаленными данными.

Пример: 's3://bucketname/path_to_file/my_file.csv'

Если filename включает расширение файла, затем detectImportOptions определяет формат файла из расширения. В противном случае необходимо задать 'FileType' Пара "имя-значение" для указания типа файла.

The 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'

Верните SpreadsheetImportOptions объект.

'text'

Верните DelimitedTextImportOptions или FixedWidthImportOptions объект в зависимости от размещения текстового файла.

'delimitedtext'

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

'fixedwidth'

Верните FixedWidthImportOptions объект. Используйте эту опцию для текстовых файлов с столбцами фиксированной ширины.

'xml'

Возврат XMLImportOptions объект. Используйте эту опцию для файлов 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'.

  • 'char' - Импортируйте текстовые данные в MATLAB как векторы символов.

  • 'string' - Импорт текстовых данных в MATLAB в виде строковых массивов.

Пример: 'TextType','char'

Тип для импортированных данных даты и времени, заданный как разделенная разделенными запятой парами, состоящая из 'DatetimeType' и одно из следующих значений: 'datetime', 'text', или 'exceldatenum'. Значение 'exceldatenum' применяется только для файлов электронной таблицы и недопустимо для текстовых файлов.

ЗначениеТип для импортированных данных даты и времени
'datetime'

MATLAB- datetime тип данных

Для получения дополнительной информации см. datetime.

'text'

Если 'DatetimeType' задается как 'text', затем тип импортированных данных даты и времени зависит от значения, заданного в 'TextType' параметр:

  • Если 'TextType' установлено в 'char', затем функция импорта возвращает даты как массив ячеек из векторов символов.

  • Если 'TextType' установлено в 'string', затем функция импорта возвращает даты как массив строк.

'exceldatenum'

Серийные номера дат Excel

Серийный номер даты - это одно число, равное количеству дней с заданной контрольной даты. Серийные номера дат Excel используют иную ссылочную дату, чем серийные номера дат MATLAB. Для получения дополнительной информации о датах Excel смотрите https://support.microsoft.com/en-us/kb/214330.

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

Индикатор для чтения первой строки как имен переменных, заданный как разделенная разделенными запятой парами, состоящая из 'ReadVariableNames' и любой из них true или false. Если не задано, readtable автоматически определяет наличие имен переменных.

Индикатор

Описание

true

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

false

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

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

Типы данных: logical

Флаг для сохранения имен переменных, заданный как разделенная разделенными запятой парами, состоящая из VariableNamingRule и любой из них 'modify' или 'preserve'.

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

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

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

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

Индикатор для чтения первого столбца в виде имен строк, заданный как разделенная разделенными запятой парами, состоящая из 'ReadRowNames' и любой из них false или true.

Индикатор

Описание

false

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

true

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

неуказанныйКогда не задано, функция импорта принимает false.

Типы данных: logical

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

Отсутствующее правилоПоведение
'fill'

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

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

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

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

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

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

Правило импорта ошибокПоведение
'fill'

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

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

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

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

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

Текст и Файлы электронной таблицы

свернуть все

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

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

Количество линий заголовка в файле, заданное как разделенная разделенными запятой парами, состоящая из 'NumHeaderLines' и положительное целое число. Если не задано, функция импорта автоматически определяет количество линий заголовка в файле.

Пример: 'NumHeaderLines',7

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

Фрагменты данных для чтения из текста или файлов электронной таблицы, заданные как разделенная запятыми пара, состоящая из 'Range' и вектор символов, строковый скаляр или числовой вектор в одной из этих форм.

Способы задать RangeОписание

Стартовая камера

'Cell' или [row col]

Задайте стартовую камеру для данных в виде вектора символов или строкового скаляра или двухчислового элемента.

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

  • Два элемента числовых вектора вида [row col] указание начальной строки и столбца.

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

Пример: 'A5' или [5 1]

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

'Corner1:Corner2' или [r1 c1 r2 c2]

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

  • 'Corner1:Corner2' - Задайте область значений используя Corner1 и Corner2 которые являются двумя противоположными углами, определяющими область, считываемую в Excel A1 обозначение. Для примера, 'C2:N15'.

  • [r1 c1 r2 c2] - Задайте область значений с помощью четырехэлементного числового вектора, содержащего начальную строку, начальный столбец, конечную строку и конечный столбец. Для примера, [2 3 15 13].

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

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

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

Задайте область значений путем идентификации начальной и конечной строк с помощью номеров строк Excel.

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

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

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

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

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

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

Начальный номер строки

n

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

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

Пример: 5

Именованные Области значений Excel

'NamedRange'

В Excel можно создать имена для идентификации областей значений в электронной таблице. Например, можно выбрать прямоугольный фрагмент электронной таблицы и вызвать ее 'myTable'. Если такие именованные области значений существуют в электронной таблице, то функция импорта может считать эту область значений с помощью своего имени.

Пример: 'Range','myTable'

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

''

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

Пример: 'Range',''

Примечание: Used Range относится к прямоугольному фрагменту электронной таблицы, которая на самом деле содержит данные. Функция импорта автоматически обнаруживает используемую область значений, обрезая все начальные и конечные строки и столбцы, которые не содержат данных. Текст, который является только белым пространством, рассматривается как данные и захватывается в пределах используемой области значений.

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

Параметры только для файлов электронной таблицы

свернуть все

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

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

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

Расположение импортируемых данных, заданное как вектор символов, строковый скаляр, массив ячеек из векторов символов, строковые массивы, положительное скалярное целое число или N-by- 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-by- 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

Расположение переменных модулей виде вектора символов, строкового скаляра, положительного скалярного целого числа или пустого символьного массива. Задайте 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

Расположение описаний переменных, заданное как вектор символов, строковый скаляр, положительное скалярное целое число или пустой символьный массив. Задайте 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

Параметры только для текстовых файлов

свернуть все

Символы разделителя полей в текстовом файле с разделителем, заданные как вектор символов, строковый скаляр, массив ячеек из векторов символов или строковые массивы.

Пример: 'Delimiter','|'

Пример: 'Delimiter',{';','*'}

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

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

Правило ведущих разделителейПоведение
'keep'Сохраните разделитель.
'ignore'Игнорируйте разделитель.
'error'Верните ошибку и прервите операцию импорта.

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

Правило ведущих разделителейПоведение
'keep'Сохраните разделитель.
'ignore'Игнорируйте разделитель.
'error'Верните ошибку и прервите операцию импорта.

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

Правило последовательных разделителейПоведение
'split'Разделите последовательные разделители на несколько полей.
'join'Объедините разделители в один разделитель.
'error'Верните ошибку и прервите операцию импорта.

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

Ширина поля переменных в текстовом файле фиксированной ширины, заданная как вектор положительных целочисленных значений. Каждое положительное целое число в векторе соответствует количеству символов в поле, которое составляет переменную. The VariableWidths свойство содержит запись, соответствующую каждой переменной, заданной в VariableNames свойство.

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

Пример: 'Whitespace',' _'

Пример: 'Whitespace','?!.,'

Символы в конце строки, заданные как вектор символов, строковый скаляр, массив ячеек из векторов символов или строковые массивы.

Пример: 'LineEnding','\n'

Пример: 'LineEnding','\r\n'

Пример: 'LineEnding',{'\b',':'}

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

Схема кодирования символов, сопоставленная с файлом, задается как разделенная разделенными запятой парами, состоящая из 'Encoding' и 'system' или стандартное имя схемы кодирования символов.

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

Пример: 'Encoding','system' использует системную кодировку по умолчанию.

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

Стиль комментариев, заданный как вектор символов, строковый скаляр, массив ячеек из векторов символов или строковые массивы.

Для примера, чтобы игнорировать текст, следующий за процентным знаком на той же линии, задайте CommentStyle как '%'.

Пример: 'CommentStyle',{'/*'}

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

Выход данных данных длительности из текстовых файлов, заданный как разделенная разделенными запятой парами, состоящая из 'DurationType' и любой из них 'duration' или 'text'.

ЗначениеТип для импортированных данных длительности
'duration'

MATLAB- duration тип данных

Для получения дополнительной информации см. duration.

'text'

Если 'DurationType' задается как 'text', затем тип для импортированных данных о длительности зависит от значения, заданного в 'TextType' параметр:

  • Если 'TextType' установлено в 'char', затем функция импорта возвращает данные о длительности как массив ячеек из векторов символов.

  • Если 'TextType' установлено в 'string', затем функция импорта возвращает данные о длительности как массив строк.

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

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

Правило дополнительных столбцовПоведение
'addvars'

Чтобы импортировать дополнительные столбцы, создайте новые переменные. Если есть N дополнительные столбцы, затем импортируйте новые переменные следующим 'ExtraVar1', 'ExtraVar2',..., 'ExtraVarN'.

ПРИМЕЧАНИЕ. Дополнительные столбцы импортируются как текст с типом данных char.

'ignore'Игнорируйте дополнительные столбцы данных.
'wrap'Перенос дополнительных столбцов данных в новые записи. Это действие не изменяет количество переменных.
'error'Отображение сообщения об ошибке и прекращение операции импорта.

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

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

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

Пример: 'TreatAsMissing',{'NA','TBD'} инструктирует функцию импорта обрабатывать любое вхождение NA или TBD как отсутствующие поля.

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

Локаль для дат чтения, заданная как разделенная разделенными запятой парами, состоящая из 'DateLocale' и вектор символов или строковый скаляр вида xx_ YY, где:

  • YY - заглавный код ISO 3166-1 альфа-2, указывающий страну.

  • xx представляет собой строчный двухбуквенный код ISO 639-1, указывающий на язык.

Список общих значений для локали см. в Locale аргумент пары "имя-значение" для datetime функция.

При использовании %D спецификатор формата для чтения текста как datetime значения, использование DateLocale для определения локали, в которой функция импорта должна интерпретировать имена месяцев и дней недели и сокращений.

Если вы задаете DateLocale аргумент в дополнение к opts Настройки импорта, тогда функция импорта использует заданное значение для DateLocale аргумент, переопределяющий локаль, заданный в настройках импорта.

Пример: 'DateLocale','ja_JP'

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

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

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

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

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

Удалите нечисловые символы из числовой переменной, заданной в виде логического true или false.

Типы данных: logical

Выход данных шестнадцатеричных данных, заданный как разделенная разделенными запятой парами, состоящая из 'HexType' и одно из значений, перечисленных в таблице.

Входной файл представляет шестнадцатеричные значения в виде текста, используя либо 0x или 0X в виде префикса и символов 0- 9, a- f, и A- F в виде цифр. (Прописные и строчные буквы представляют одни и те же цифры - например '0xf' и '0xF' оба представляют 15.)

Функция импорта преобразует шестнадцатеричные значения в тип данных, заданный значением 'HexType'.

Значение 'HexType'

Тип данных Выходов Табличных переменных

'auto'

тип данных обнаружен автоматически

'text'

неизмененный входной текст

'int8'

8-битное целое число, со знаком

'int16'

16-битное целое число, со знаком

'int32'

32-битное целое число, со знаком

'int64'

64-битное целое число, со знаком

'uint8'

8-битное целое число, без знака

'uint16'

16-битное целое число, без знака

'uint32'

32-битное целое число, без знака

'uint64'

64-битное целое число, без знака

Пример: 'HexType','uint16' преобразует текст, представляющий шестнадцатеричные значения (такие как '0xFF') беззнаковым 16-битным целым числам (таким как 255) в выход таблице.

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

Выход данных двоичных данных, заданный как разделенная разделенными запятой парами, состоящая из 'BinaryType' и одно из значений, перечисленных в таблице.

Входной файл представляет двоичные значения как текст, используя любой из 0b или 0B в виде префикса и символов 0 и 1 в виде цифр.

Функция импорта преобразует двоичные значения в тип данных, заданный значением 'BinaryType'.

Значение 'BinaryType'

Тип данных Выходов Табличных переменных

'auto'

тип данных обнаружен автоматически

'text'

неизмененный входной текст

'int8'

8-битное целое число, со знаком

'int16'

16-битное целое число, со знаком

'int32'

32-битное целое число, со знаком

'int64'

64-битное целое число, со знаком

'uint8'

8-битное целое число, без знака

'uint16'

16-битное целое число, без знака

'uint32'

32-битное целое число, без знака

'uint64'

64-битное целое число, без знака

Пример: 'BinaryType','uint16' преобразует текст, представляющий двоичные значения (такие как '0b11111111') беззнаковым 16-битным целым числам (таким как 255) в выход таблице.

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

Только XML- Файлы

свернуть все

Атрибуты импорта, заданные как разделенная разделенными запятой парами, состоящая из 'ImportAttributes' и любой из них 1 (true) или 0 (false). Если вы задаете falseтогда функция чтения не импортирует XML-атрибуты в файл входа как переменные в таблице выходы.

Пример: 'ImportAttributes',false

Суффикс атрибута, заданный как разделенная разделенными запятой парами, состоящая из 'AttributeSuffix' и либо вектор символов, либо строковый скаляр. Этот аргумент задает суффикс, который функция чтения добавляет ко всем табличным переменным, которые соответствуют атрибутам в вход XML- файлу. Если вы не задаете 'AttributeSuffix'затем функция чтения по умолчанию добавляет суффикс 'Attribute' ко всем именам переменных, соответствующим атрибутам в вход XML- файл.

Пример: 'AttributeSuffix','_att'

Имя узла строки таблицы XML, заданное как разделенная запятой пара, состоящее из 'RowNodeName' и либо вектор символов, либо строковый скаляр. Этот аргумент задает имя узла XML, которое определяет строки таблицы выхода.

Пример: 'RowNodeName','XMLNodeName'

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

Пример: 'RowSelector','/RootNode/ChildNode'

Табличные переменные XML- узел имена, заданные как разделенная запятой пара, состоящие из 'VariableNodeNames' и массив ячеек с векторами символов или строковыми массивами. Этот аргумент задает имя узла XML, которое функция чтения использует для идентификации XML- узлов, считываемого как переменные в выход таблице.

Пример: 'VariableNodeNames',{'XMLNodeName1','XMLNodeName2'}

Пример: 'VariableNodeNames',"XMLNodeName"

Пример: 'VariableNodeNames',["XMLNodeName1","XMLNodeName2"]

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

Пример: 'VariableSelectors',{'/RootNode/ChildNode'}

Пример: 'VariableSelectors',"/RootNode/ChildNode"

Пример: 'VariableSelectors',["/RootNode/ChildNode1","/RootNode/ChildNode2"]

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

Пример: 'TableNodeName','NodeName'

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

Пример: 'TableSelector','/RootNode/ChildNode'

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

Пример: 'VariableUnitsSelector','/RootNode/ChildNode'

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

Пример: 'VariableDescriptionsSelector','/RootNode/ChildNode'

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

Пример: 'RowNamesSelector','/RootNode/ChildNode'

Процедура обработки повторяющихся XML- узлы в заданной строке таблицы, заданная как 'addcol', 'ignore', или 'error'.

Повторное правило узла

Поведение

'addcol'

Добавьте столбцы для повторяющихся узлов под заголовком переменной в таблице. Определение значения 'RepeatedNodeRule' как 'addcol' не создает отдельную переменную в таблице для повторяющегося узла.

'ignore'

Пропустите импорт повторяющихся узлов.

'error'Отображение сообщения об ошибке и прекращение операции импорта.

Пример: 'RepeatedNodeRule','ignore'

Набор зарегистрированных префиксов пространства имен 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”]

Выходные аргументы

свернуть все

Настройки импорта для указанного файла, возвращенные как SpreadsheetImportOptions, DelimitedTextImportOptions, FixedWidthImportOptions, или XMLImportOptions объект. Тип объекта опции зависит от типа заданного файла. Для текстовых файлов (.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.

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