Создать таблицу из файла
создает таблицу, считывая данные, ориентированные на столбцы, из файла.T = readtable(filename)
readtable определяет формат файла из расширения файла:
.txt, .dat, или .csv для текстовых файлов с разделителями
.xls, .xlsb, .xlsm, .xlsx, .xltm, .xltx, или .ods для файлов электронных таблиц
.xml для файлов расширяемого языка разметки (XML)
Для текстовых файлов и файлов электронных таблиц: readtable создает одну переменную в T для каждого столбца в файле и считывает имена переменных из первой строки файла. Для XML-файлов: readtable создает одну переменную в T для каждого элемента или узла атрибута, обнаруженного как переменная таблицы. Имена переменных соответствуют именам элементов и атрибутов.
По умолчанию readtable создает переменные, типы данных которых соответствуют значениям данных, обнаруженным в каждом столбце входного файла.
создает таблицу из файла с дополнительными параметрами, заданными одним или несколькими аргументами пары имя-значение. Например, можно указать, T = readtable(___,Name,Value)readtable считывает первую строку файла как имена переменных или как данные.
Чтобы задать определенные параметры импорта для данных, можно либо использовать opts или можно указать пары имя-значение. При указании пар имя-значение в дополнение к opts, то readtable поддерживает только следующие пары имя-значение:
Параметры текста и электронной таблицы - ReadVariableNames, ReadRowNames
Параметры только текста - DateLocale, Encoding
Параметры только электронной таблицы - Sheet, UseExcel
Загрузить файл myCsvTable.dat и предварительный просмотр его содержимого в текстовом редакторе. Ниже показан снимок экрана. Обратите внимание, что файл содержит данные, ориентированные на столбцы, разделенные запятыми.
filename = 'myCsvTable.dat';Создайте таблицу из текстового файла, разделенного запятыми. Итоговая таблица T содержит одну переменную для каждого столбца в файле и readtable обрабатывает записи в первой строке файла как имена переменных.
T = readtable(filename)
T=5×6 table
LastName Gender Age Height Weight Smoker
____________ ______ ___ ______ ______ ______
{'Smith' } {'M'} 38 71 176 1
{'Johnson' } {'M'} 43 69 163 0
{'Williams'} {'F'} 38 64 131 0
{'Jones' } {'F'} 40 67 133 0
{'Brown' } {'F'} 49 64 119 0
Начиная с R2020a, readtable функция считывает входной файл, как если бы он автоматически вызвал detectImportOptions функция в файле. Он может обнаруживать типы данных, отбрасывать дополнительные строки заголовка и заполнять отсутствующие значения.
Например, предварительный просмотр файла headersAndMissing.txt в текстовом редакторе. Файл содержит строку с именами столбцов и другую строку с заголовками. Последние две строки имеют промежутки, в которых предыдущие строки имеют значения данных.

Создайте таблицу из файла. readtable функция отбрасывает заголовки. Кроме того, он заполняет пробелы соответствующими отсутствующими значениями - NaN значение для числовых переменных и пустой символьный вектор для текста.
T = readtable('headersAndMissing.txt')T=5×6 table
LastName Gender Age Height Weight Smoker
___________ __________ ___ ______ ______ ______
{'Wu' } {'M' } 38 71 176 1
{'Johnson'} {'M' } 43 69 163 0
{'Sanchez'} {'F' } 38 64 131 0
{'Brown' } {'F' } NaN 67 133 0
{'Picard' } {0x0 char} NaN 64 119 0
Чтобы восстановить поведение по умолчанию из предыдущих версий, укажите 'Format','auto' аргумент пары имя-значение. readtable считывает заголовки как данные и в результате преобразует все переменные таблицы в текст.
T = readtable('headersAndMissing.txt','Format','auto')
T=6×6 table
LastName Gender Age Height Weight Smoker
___________ __________ __________ _______ _______ ___________
{'string' } {'string'} {'int' } {'int'} {'int'} {'boolean'}
{'Wu' } {'M' } {'38' } {'71' } {'176'} {'1' }
{'Johnson'} {'M' } {'43' } {'69' } {'163'} {'0' }
{'Sanchez'} {'F' } {'38' } {'64' } {'131'} {'0' }
{'Brown' } {'F' } {0x0 char} {'67' } {'133'} {'0' }
{'Picard' } {0x0 char} {0x0 char} {'64' } {'119'} {'0' }
Дополнительные сведения см. в разделе «Вопросы совместимости» на этой странице.
Предварительный просмотр файла mySpaceDelimTable.txt в текстовом редакторе. Ниже показан снимок экрана. Обратите внимание, что файл содержит данные с разделителями, ориентированные на столбцы.
Создайте таблицу из текстового файла с разделителями. readtable функция назначает имена переменных по умолчанию Var1 кому Var5 поскольку файл не содержит обнаруживаемых имен столбцов в своей первой строке.
T = readtable('mySpaceDelimTable.txt')T=3×5 table
Var1 Var2 Var3 Var4 Var5
_____ ____ ____ ______ _________
{'M'} 45 45 {'NY'} {'true' }
{'F'} 41 32 {'CA'} {'false'}
{'M'} 40 34 {'MA'} {'false'}
Загрузить файл myCsvTable.dat и предварительный просмотр его содержимого в текстовом редакторе. Ниже показан снимок экрана. Обратите внимание, что файл содержит данные, ориентированные на столбцы, разделенные запятыми.
filename = 'myCsvTable.dat';Создайте таблицу из текстового файла, разделенного запятыми. Импорт первых двух столбцов в виде символьных векторов, третий столбец в виде uint32и следующие два столбца в виде чисел с двойной точностью и плавающей запятой. Импорт записей последнего столбца в виде символьных векторов.
T = readtable(filename,'Format','%s%s%u%f%f%s')
T=5×6 table
LastName Gender Age Height Weight Smoker
____________ ______ ___ ______ ______ ______
{'Smith' } {'M'} 38 71 176 {'1'}
{'Johnson' } {'M'} 43 69 163 {'0'}
{'Williams'} {'F'} 38 64 131 {'0'}
{'Jones' } {'F'} 40 67 133 {'0'}
{'Brown' } {'F'} 49 64 119 {'0'}
Спецификаторы преобразования: %s для массива ячеек символьных векторов, %f для double, и %u для uint32.
Прочитайте немецкие даты из файла и добавьте их в таблицу как английские даты.
Предварительный просмотр файла german_dates.txt в текстовом редакторе. Ниже показан снимок экрана. Обратите внимание, что первый столбец значений содержит даты на немецком языке, а второй и третий столбцы являются числовыми значениями.
Прочтите образец файла с помощью readtable. Спецификаторы преобразования: %D даты и %f для значений с плавающей запятой. Укажите кодировку файла с помощью FileEncoding аргумент пары имя-значение. Укажите формат и язык дат с помощью DateLocale аргумент пары имя-значение.
T = readtable('german_dates.txt',... 'Format','%{dd MMMM yyyy}D %f %f',... 'FileEncoding','ISO-8859-15',... 'DateLocale','de_DE')
T=3×3 table
Var1 Var2 Var3
________________ ____ _____
01 January 2014 20.2 100.5
01 February 2014 21.6 102.7
01 March 2014 20.7 99.8
Создайте таблицу из электронной таблицы, которая содержит имена переменных в первой строке и имена строк в первом столбце.
T = readtable('patients.xls','ReadRowNames',true);
Отображение первых пяти строк и первых четырех переменных таблицы.
T(1:5,1:4)
ans=5×4 table
Gender Age Location Height
__________ ___ _____________________________ ______
Smith {'Male' } 38 {'County General Hospital' } 71
Johnson {'Male' } 43 {'VA Hospital' } 69
Williams {'Female'} 38 {'St. Mary's Medical Center'} 64
Jones {'Female'} 40 {'VA Hospital' } 67
Brown {'Female'} 49 {'County General Hospital' } 64
Просмотр DimensionNames свойства таблицы.
T.Properties.DimensionNames
ans = 1x2 cell
{'LastName'} {'Variables'}
'LastName' - имя в первом столбце первой строки электронной таблицы.
Создание таблицы с использованием данных из указанной области электронной таблицы patients.xls. Используйте данные из прямоугольной области 5 на 3 между углами C2 и E6. Не используйте первую строку этой области в качестве имен переменных.
T = readtable('patients.xls',... 'Range','C2:E6',... 'ReadVariableNames',false)
T =
Var1 Var2 Var3
____ ___________________________ ____
38 'County General Hospital' 71
43 'VA Hospital' 69
38 'St. Mary's Medical Center' 64
40 'VA Hospital' 67
49 'County General Hospital' 64
T содержит имена переменных по умолчанию.
Создайте параметры импорта, настройте типы данных для нескольких переменных, а затем прочитайте данные.
Создание объекта параметров импорта из текстового файла.
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('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
Можно считывать табличные данные, сохраняя имена переменных, содержащие любые символы, включая пробелы и символы, не относящиеся к ASCII. Сначала создайте таблицу с произвольными именами переменных и запишите таблицу в текстовый файл. Затем прочитайте табличные данные, сохранив имена исходных переменных.
Создание таблицы, содержащей произвольные имена переменных, и запись табличных данных в файл 'sampletable.txt'.
LastName = {'Sanchez';'Johnson';'Li';'Diaz';'Brown'};
Age = [38;43;38;40;49];
Smoker = logical([1;0;1;0;1]);
varNames = {'Last Name','Age','Smoker (1 or 0)'};
T = table(LastName,Age,Smoker,'VariableNames',varNames)T=5×3 table
Last Name Age Smoker (1 or 0)
___________ ___ _______________
{'Sanchez'} 38 true
{'Johnson'} 43 false
{'Li' } 38 true
{'Diaz' } 40 false
{'Brown' } 49 true
writetable(T,'sampletable.txt')Считывание табличных данных с помощью readtable. По умолчанию MATLAB ® преобразует любые имена переменных, содержащие пробелы и символы, не относящиеся к ASCII, в допустимые идентификаторы MATLAB ®. Например, MATLAB ® преобразует имена переменных'Last Name' кому 'LastName', и 'Smoker (1 or 0)' кому 'Smoker_1or0_'. Чтобы считывать табличные данные с сохранением имен переменных, установите 'VariableNamingRule' параметр для preserve.
T_preserve = readtable('sampletable.txt',"VariableNamingRule","preserve")
T_preserve=5×3 table
Last Name Age Smoker (1 or 0)
___________ ___ _______________
{'Sanchez'} 38 1
{'Johnson'} 43 0
{'Li' } 38 1
{'Diaz' } 40 0
{'Brown' } 49 1
Можно считывать шестнадцатеричные и двоичные числа из файла и сохранять их как числовые переменные в таблице. readtable функция автоматически считывает шестнадцатеричные и двоичные числа, если они включают 0x и 0b префиксы соответственно. Числовые значения хранятся с использованием целочисленных типов данных. Можно также использовать параметры импорта для чтения таких чисел, если они не имеют префиксов.
Предварительный просмотр hexAndBinary.txt в текстовом редакторе. Имеет столбцы шестнадцатеричных и двоичных чисел с префиксами, и один столбец без.

Чтение файла с помощью readtable. Функция обнаруживает номера с помощью 0x и 0b префиксы и сохраняет их как целые числа. Третий столбец не имеет префиксов, поэтому его значения обрабатываются как текст.
T = readtable('hexAndBinary.txt')T=3×4 table
Var1 Var2 Var3 Var4
_____ ____ ________ ___________
255 255 {'C7F9'} {'Device1'}
256 4 {'05BF'} {'Device2'}
43981 129 {'F00F'} {'Device3'}
readtable функция сохраняет числовые значения в различных целых классах (uint16 и uint8) потому что T.Var1 имеет значение, которое требует более 8 бит памяти.
class(T.Var1)
ans = 'uint16'
class(T.Var2)
ans = 'uint8'
Чтобы указать типы данных для хранения числовых значений, импортированных из шестнадцатеричных и двоичных чисел, используйте 'HexType' и 'BinaryType' аргументы пары имя-значение. Сохраните значения в виде подписанных 32-разрядных целых чисел.
T = readtable('hexAndBinary.txt','HexType','int32','BinaryType','int32'); class(T.Var1)
ans = 'int32'
class(T.Var2)
ans = 'int32'
Можно использовать параметры импорта для обнаружения шестнадцатеричных и двоичных чисел без префиксов и указать для них хранилище. Создание объекта параметров импорта для hexAndBinary.txt.
opts = detectImportOptions('hexAndBinary.txt')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: 'UTF-8'
Replacement Properties:
MissingRule: 'fill'
ImportErrorRule: 'fill'
ExtraColumnsRule: 'addvars'
Variable Import Properties: Set types by name using setvartype
VariableNames: {'Var1', 'Var2', 'Var3' ... and 1 more}
VariableTypes: {'auto', 'auto', 'char' ... and 1 more}
SelectedVariableNames: {'Var1', 'Var2', 'Var3' ... and 1 more}
VariableOptions: Show all 4 VariableOptions
Access VariableOptions sub-properties using setvaropts/getvaropts
VariableNamingRule: 'modify'
Location Properties:
DataLines: [1 Inf]
VariableNamesLine: 0
RowNamesColumn: 0
VariableUnitsLine: 0
VariableDescriptionsLine: 0
To display a preview of the table, use preview
Чтобы указать, что третий столбец должен быть импортирован как шестнадцатеричные значения, несмотря на отсутствие префикса, используйте setvaropts для изменения типа переменной для третьей переменной таблицы. Задайте тип переменной как int32.
opts = setvaropts(opts,3,'NumberSystem','hex','Type','int32')
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: 'UTF-8'
Replacement Properties:
MissingRule: 'fill'
ImportErrorRule: 'fill'
ExtraColumnsRule: 'addvars'
Variable Import Properties: Set types by name using setvartype
VariableNames: {'Var1', 'Var2', 'Var3' ... and 1 more}
VariableTypes: {'auto', 'auto', 'int32' ... and 1 more}
SelectedVariableNames: {'Var1', 'Var2', 'Var3' ... and 1 more}
VariableOptions: Show all 4 VariableOptions
Access VariableOptions sub-properties using setvaropts/getvaropts
VariableNamingRule: 'modify'
Location Properties:
DataLines: [1 Inf]
VariableNamesLine: 0
RowNamesColumn: 0
VariableUnitsLine: 0
VariableDescriptionsLine: 0
To display a preview of the table, use preview
Прочитайте файл и импортируйте третий столбец как числовые значения, а не текст.
T = readtable('hexAndBinary.txt',opts)T=3×4 table
Var1 Var2 Var3 Var4
_____ ____ _____ ___________
255 255 51193 {'Device1'}
256 4 1471 {'Device2'}
43981 129 61455 {'Device3'}
Создайте параметры импорта XML для XML-файла, укажите переменные для импорта, а затем прочитайте данные.
XML-файл students.xml имеет четыре одноуровневых узла с именем Student, каждый из которых содержит одни и те же дочерние узлы и атрибуты.
type students.xml<?xml version="1.0" encoding="utf-8"?>
<Students>
<Student ID="S11305">
<Name FirstName="Priya" LastName="Thompson" />
<Age>18</Age>
<Year>Freshman</Year>
<Address>
<Street xmlns="https://www.mathworks.com">591 Spring Lane</Street>
<City>Natick</City>
<State>MA</State>
</Address>
<Major>Computer Science</Major>
<Minor>English Literature</Minor>
</Student>
<Student ID="S23451">
<Name FirstName="Conor" LastName="Cole" />
<Age>18</Age>
<Year>Freshman</Year>
<Address>
<Street xmlns="https://www.mathworks.com">4641 Pearl Street</Street>
<City>San Francisco</City>
<State>CA</State>
</Address>
<Major>Microbiology</Major>
<Minor>Public Health</Minor>
</Student>
<Student ID="S119323">
<Name FirstName="Morgan" LastName="Yang" />
<Age>21</Age>
<Year>Senior</Year>
<Address>
<Street xmlns="https://www.mathworks.com">30 Highland Road</Street>
<City>Detriot</City>
<State>MI</State>
</Address>
<Major>Political Science</Major>
</Student>
<Student ID="S201351">
<Name FirstName="Salim" LastName="Copeland" />
<Age>19</Age>
<Year>Sophomore</Year>
<Address>
<Street xmlns="https://www.mathworks.com">3388 Moore Avenue</Street>
<City>Fort Worth</City>
<State>TX</State>
</Address>
<Major>Business</Major>
<Minor>Japanese Language</Minor>
</Student>
<Student ID="S201351">
<Name FirstName="Salim" LastName="Copeland" />
<Age>20</Age>
<Year>Sophomore</Year>
<Address>
<Street xmlns="https://www.mathworks.com">3388 Moore Avenue</Street>
<City>Fort Worth</City>
<State>TX</State>
</Address>
<Major>Business</Major>
<Minor>Japanese Language</Minor>
</Student>
<Student ID="54600">
<Name FirstName="Dania" LastName="Burt" />
<Age>22</Age>
<Year>Senior</Year>
<Address>
<Street xmlns="https://www.mathworks.com">22 Angie Drive</Street>
<City>Los Angeles</City>
<State>CA</State>
</Address>
<Major>Mechanical Engineering</Major>
<Minor>Architecture</Minor>
</Student>
<Student ID="453197">
<Name FirstName="Rikki" LastName="Gunn" />
<Age>21</Age>
<Year>Junior</Year>
<Address>
<Street xmlns="https://www.mathworks.com">65 Decatur Lane</Street>
<City>Trenton</City>
<State>ME</State>
</Address>
<Major>Economics</Major>
<Minor>Art History</Minor>
</Student>
</Students>
Создание XMLImportOptions объект из файла. Укажите значение VariableSelectors как //@FirstName для выбора FirstName узел элемента для импорта в качестве переменной таблицы.
opts = xmlImportOptions("VariableSelectors","//@FirstName")
opts =
XMLImportOptions with properties:
Replacement Properties:
MissingRule: "fill"
ImportErrorRule: "fill"
RepeatedNodeRule: "addcol"
Variable Import Properties: Set types by name using setvartype
VariableNames: "Var1"
VariableTypes: "char"
SelectedVariableNames: "Var1"
VariableOptions: Show all 1 VariableOptions
Access VariableOptions sub-properties using setvaropts/getvaropts
VariableNamingRule: "preserve"
Location Properties:
TableSelector: <missing>
RowSelector: <missing>
VariableSelectors: "//@FirstName"
VariableUnitsSelector: <missing>
VariableDescriptionsSelector: <missing>
RowNamesSelector: <missing>
RegisteredNamespaces: [0x2 string]
Использовать readtable вместе с объектом options для импорта указанной переменной.
T = readtable("students.xml",opts)T=7×1 table
Var1
__________
{'Priya' }
{'Conor' }
{'Morgan'}
{'Salim' }
{'Salim' }
{'Dania' }
{'Rikki' }
Зарегистрируйте пользовательский префикс пространства имен 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 включает расширение файла, затем функция импорта определяет формат файла из расширения. В противном случае необходимо указать 'FileType' аргументы пары «имя-значение» для указания типа файла.
В системах Windows ® с программным обеспечением Microsoft ® Excel ® функция импорта считывает любой формат файла электронной таблицы Excel, распознаваемый вашей версией Excel.
Если в системе нет Excel для Windows или используется MATLAB Online™, функция импорта работает с UseExcel свойство имеет значение false, и читает только .xls, .xlsx, .xlsm, .xltx, and .xltm файлы.
Для текстовых файлов с разделителями функция импорта преобразует пустые поля в файле в NaN (для числовой переменной) или пустой символьный вектор (для текстовой переменной). Все строки в текстовом файле должны иметь одинаковое количество разделителей. Функция импорта игнорирует незначительный пробел в файле.
Типы данных: char | string
opts - Параметры импорта файловSpreadsheetImportOptions | DelimitedtextImportOptions | FixedWidthImportOptions | XMLImportOptionsПараметры импорта файлов, указанные как SpreadsheetImportOptions, DelimitedTextImportOptions, FixedWidthImportOptions, или XMLImportOptions объект, созданный detectImportOptions функция. opts содержит свойства, управляющие процессом импорта данных. Дополнительные сведения о свойствах каждого объекта см. на соответствующей странице объекта.
| Тип файлов | Продукция |
|---|---|
| Файлы электронных таблиц | SpreadsheetImportOptions объект (доступен только для Sheet, DataRange, и VariableNames свойства) |
| Текстовые файлы | DelimitedTextImportOptions объект |
| Текстовые файлы фиксированной ширины | FixedWidthImportOptions объект |
| XML-файлы | XMLImportOptions объект |
Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.
'ReadVariableNames',false указывает, что первая строка файла не соответствует именам переменных.'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-файлов
Пример: 'FileType','text'
Типы данных: char | string
'ReadRowNames' - Индикатор для считывания первого столбца в виде имен строкfalse (по умолчанию) | true | 0 | 1Индикатор для считывания первого столбца в виде имен строк, указанный как пара, разделенная запятыми, состоящая из 'ReadRowNames' и либо false, true, 0, или 1.
Индикатор | Описание |
|---|---|
| Используется, когда первый столбец считываемой области содержит данные, а не имена строк таблицы. |
| Используется, когда первый столбец считываемой области содержит имена строк таблицы. |
| неуказанный | Если оставить неопределенным, readtable принимает false. |
Примечание: Если оба 'ReadVariableNames' и 'ReadRowNames' логические индикаторы: true, то readtable сохраняет имя в первом столбце первой строки области для чтения в качестве имени первого размера в свойстве, T.Properties.DimensionNames.
При указании ReadRowNames аргумент в дополнение к opts параметры импорта, затем readtable изменения поведения на основе спецификации:
Если ReadRowNames является true, затем прочтите имена строк из указанного файла с помощью RowNamesRange или RowNameColumn свойства объекта параметров импорта.
Если ReadRowNames является false, то не импортируйте имена строк.
'TreatAsMissing' - Текст-заполнитель, обрабатываемый как пустое значениеТекст-местозаполнитель, обрабатываемый как пустое значение, указанное как пара, разделенная запятыми, состоящая из 'TreatAsMissing' и символьный вектор, массив ячеек символьных векторов, строку или строковый массив. Элементы таблицы, соответствующие этим символам, имеют значение NaN.
'TreatAsMissing' применяется только к числовым столбцам в файле, и readtable не принимает числовые литералы, такие как '-99'.
Пример: 'TreatAsMissing','N/A' или 'TreatAsMissing',"N/A" наборы N/A в числовых столбцах для NaN.
Пример: 'TreatAsMissing',{'.','NA','N/A'} или 'TreatAsMissing',[".","NA","N/A"] наборы ., NA и N/A в числовых столбцах для NaN.
Типы данных: 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
'VariableNamingRule' - Флаг для сохранения имен переменных'modify' (по умолчанию) | 'preserve'Флаг для сохранения имен переменных, указанный как разделенная запятыми пара, состоящая из VariableNamingRule и либо 'modify' или 'preserve'.
'modify' - Преобразовать недопустимые имена переменных (согласно определению isvarname к допустимым идентификаторам MATLAB.
'preserve' - Сохранение имен переменных, которые не являются допустимыми идентификаторами MATLAB, например имен переменных, содержащих пробелы и символы, не относящиеся к ASCII.
Начиная с R2019b имена переменных и строк могут содержать любые символы, включая пробелы и символы, не относящиеся к ASCII. Кроме того, они могут начинаться с любых символов, а не только букв. Имена переменных и строк не должны быть допустимыми идентификаторами MATLAB (согласно определению isvarname функция). Чтобы сохранить эти имена переменных и строк, задайте значение VariableNamingRule кому 'preserve'.
Типы данных: char | string
'ReadVariableNames' - Считать первую строку как имена переменныхtrue | false | 1 | 0Индикатор для считывания первой строки в виде имен переменных, указанный как пара, разделенная запятыми, состоящая из 'ReadVariableNames' и либо true, false, 1, или 0. Если не указано, readtable автоматически обнаруживает наличие имен переменных.
Индикатор | Описание |
|---|---|
| Используется, когда первая строка области для чтения содержит имена переменных для таблицы. |
| Используется, когда первая строка считываемой области содержит данные в таблице. |
| неуказанный | Если оставить неопределенным, readtable автоматически обнаруживает true или false и принимает соответствующие меры. |
Примечание: Если оба 'ReadVariableNames' и 'ReadRowNames' логические индикаторы: true, то readtable сохраняет имя в первом столбце первой строки области для чтения в качестве имени первого размера в свойстве, T.Properties.DimensionNames.
При указании ReadVariableNames аргумент в дополнение к opts параметры импорта, затем readtable изменения поведения на основе спецификации:
Если ReadVariableNames является true, затем прочтите имена переменных из указанного файла с помощью VariableNamesRange или VariableNamesLine свойства объекта параметров импорта.
Если ReadVariableNames является false, затем прочтите имена переменных из VariableNames свойства объекта параметров импорта.
'Delimiter' - Символ разделителя поляСимвол разделителя поля, указанный как разделенная запятыми пара, состоящая из 'Delimiter' и символьный вектор, массив ячеек символьных векторов или строку. Определить Delimiter использование любого допустимого символа, например запятой ',' или период '.'.
В этой таблице перечислены некоторые часто используемые символы разделителя полей.
Спецификатор | Разделитель поля |
|---|---|
| Запятая |
| Пространство |
| Счет |
| Точка с запятой |
| Вертикальная полоса |
| неуказанный | Если не указано, |
Чтобы рассматривать последовательные разделители как один разделитель, укажите Delimiter как массив ячеек символьных векторов. Кроме того, необходимо также указать MultipleDelimsAsOne вариант.
Пример: 'Delimiter',',' или 'Delimiter','comma'
Типы данных: char | string | cell
'NumHeaderLines' - Количество строк заголовка0 (по умолчанию) | положительное целое числоЧисло строк заголовка, пропускаемых в начале файла, указанное как пара, разделенная запятыми, состоящая из 'NumHeaderLines' и положительное целое число. Если не указано, readtable автоматически определяет количество пропускаемых строк.
Типы данных: single | double
'Format' - Формат столбца'auto'Формат столбца файла, указанный как разделенная запятыми пара, состоящая из 'Format' и вектор символов или строковый скаляр, имеющий один или несколько спецификаторов преобразования, или 'auto'. Спецификаторы преобразования совпадают с спецификаторами, принятыми textscan функция.
Указание формата может значительно повысить скорость некоторых больших файлов. Если не указано значение для Format, то readtable использование %q для интерпретации нечисловых столбцов. %q спецификатор считывает текст и опускает двойные кавычки (") при необходимости.
Если не указать 'Format' пара имя-значение, затем readtable функция ведет себя так, как будто вы использовали результаты detectImportOptions для импорта данных. Дополнительные сведения о последствиях этого поведения см. в разделе Вопросы совместимости.
При указании 'Format','auto', то созданные переменные double массивы, массив ячеек символьных векторов или datetime массивы, в зависимости от данных. Если весь столбец является числовым, переменные импортируются как double. Если какой-либо элемент в столбце не является числовым, переменные импортируются как массивы ячеек символьных векторов или как datetime массивы, если значения представляют даты и время.
Типы данных: char | string
'EmptyValue' - Возвращенное значение для пустых числовых полейNaN (по умолчанию) | скалярВозвращенное значение для пустых числовых полей в текстовых файлах с разделителями, указанное как пара, разделенная запятыми, состоящая из 'EmptyValue' и скаляр.
'MultipleDelimsAsOne' - Обработка нескольких разделителей0 (false) (по умолчанию) | 1 (true)Обработка нескольких разделителей, указанная как разделенная запятыми пара, состоящая из 'MultipleDelimsAsOne' и либо true или false. Если true, то функция импорта обрабатывает последовательные разделители как одиночный разделитель. Повторяющиеся разделители, разделенные пробелом, также рассматриваются как единый разделитель. Необходимо также указать Delimiter вариант.
Пример: 'MultipleDelimsAsOne',1
'CollectOutput' - Логический индикатор, определяющий конкатенацию данныхfalse (по умолчанию) | true Логический индикатор, определяющий конкатенацию данных, указанный как разделенная запятыми пара, состоящая из 'CollectOutput' и либо true или false. Если trueзатем функция импорта объединяет последовательные выходные ячейки одного и того же фундаментального класса MATLAB в один массив.
'CommentStyle' - Символы, обозначающие текст для игнорированияСимволы, обозначающие игнорируемый текст, обозначаемый как разделенная запятыми пара, состоящая из 'CommentStyle' и символьный вектор, массив ячеек символьных векторов, строку или строковый массив.
Например, укажите символ, такой как '%' игнорировать текст, следующий за символом в той же строке. Укажите массив ячеек из двух символьных векторов, например {'/*','*/'}, чтобы игнорировать любой текст между этими последовательностями.
MATLAB проверяет наличие комментариев только в начале каждого поля, но не в пределах поля.
Пример: 'CommentStyle',{'/*','*/'}
Типы данных: char | string
'ExpChars' - Символы экспоненты'eEdD' (по умолчанию) | символьный вектор | строкаСимволы экспоненты, указанные как пара, разделенная запятыми, состоящая из 'ExpChars' и символьный вектор или строку. Символы степени по умолчанию: e, E, d, и D.
Типы данных: char | string
'LineEnding' - Символы конца строкиСимволы конца строки, указанные как пара, разделенная запятыми, состоящая из 'LineEnding' и символьный вектор или строку. Вектор символа должен быть '\r\n' или необходимо указать один символ. Общие символы конца строки - это символ новой строки ('\n') или возврат каретки ('\r'). При указании '\r\n', то функция импорта обрабатывает любой из \r, \nи сочетание двух (\r\n) в качестве символов конца строки.
Последовательность конца строки по умолчанию: \n, \r, или \r\n, в зависимости от содержимого файла.
Если в конце последней строки файла отсутствуют значения и последовательность конца строки, то функция импорта возвращает пустые значения для этих полей. Это гарантирует, что отдельные ячейки в массиве выходных ячеек, C, одинаковый размер.
Пример: 'LineEnding',':'
Типы данных: char | string
'DateLocale' - Языковой стандарт для чтения датЯзыковой стандарт для чтения дат, указанный как пара, разделенная запятыми, состоящая из 'DateLocale' и вектор символов или строковый скаляр формы , где:xx_YY
YY является верхним кодом ISO 3166-1 альфа-2, указывающим страну.
xx - строчный двухбуквенный код ISO 639-1, указывающий язык.
Список общих значений для языкового стандарта см. в разделе Locale аргумент пары имя-значение для datetime функция.
При использовании %D спецификатор формата для чтения текста как datetime значения, использование DateLocale для указания языкового стандарта, в котором функция импорта должна интерпретировать имена и сокращения месяца и дня недели.
При указании DateLocale аргумент в дополнение к opts параметры импорта, затем функция импорта использует указанное значение для DateLocale , переопределяя языковой стандарт, определенный в параметрах импорта.
Пример: 'DateLocale','ja_JP'
'Encoding' - Схема кодирования символов'UTF-8' | 'ISO-8859-1' | 'windows-1251' | 'windows-1252' | ...Схема кодирования символов, связанная с файлом, заданная как разделенная запятыми пара, состоящая из 'Encoding' и 'system' или имя стандартной схемы кодирования символов. Если кодировка не указана, readtable функция использует автоматическое обнаружение набора символов для определения кодировки при чтении файла.
При указании 'Encoding' в дополнение к параметрам импорта, затем readtable функция использует указанное значение для 'Encoding'переопределение кодировки, определенной в параметрах импорта.
Пример: 'Encoding','UTF-8' использует UTF-8 в качестве кодировки.
Пример: 'Encoding','system' использует системную кодировку по умолчанию.
Типы данных: char | string
'DurationType' - Тип выходных данных данных длительности'duration' (по умолчанию) | 'text'Тип выходных данных длительности из текстовых файлов, указанный как разделенная запятыми пара, состоящая из 'DurationType' и либо 'duration' или 'text'.
| Стоимость | Тип для импортированных данных длительности |
|---|---|
'duration' | MATLAB Дополнительные сведения см. в разделе |
'text' | Если
|
Типы данных: char | string
'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
'TrimNonNumeric' - Удалить нечисловые символыfalse (по умолчанию) | trueУдаление нечисловых символов из числовой переменной, указанной как логическая true или false.
Пример: Если пара имя-значение указана как 'TrimNonNumeric',true, затем функция импорта считывает '$500/-' как 500.
Типы данных: logical
'Sheet' - Лист для чтения1 (по умолчанию) | положительное целое число | символьный вектор | строкаЛист для чтения, указанный как разделенная запятыми пара, состоящая из 'Sheet' и положительное целое число, указывающее индекс листа или символьный вектор или строку, содержащую имя листа. Имя листа не может содержать двоеточие (:). Чтобы определить имена листов в файле электронной таблицы, используйте sheets = sheetnames(filename). Дополнительные сведения см. в разделе sheetnames.
При указании Sheet аргумент в дополнение к opts параметры импорта, затем readtable функция использует указанное значение для Sheet , переопределяя имя листа, определенное в параметрах импорта.
Пример: 'Sheet', 2
Пример: 'Sheet', 'MySheetName'
Пример: 'Sheet', "MySheetName"
Типы данных: char | string | single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
'Range' - Часть листа, подлежащая прочтениюЧасть листа для чтения, обозначенная как прямоугольная область, заданная разделенной запятыми парой, состоящей из 'Range' и вектор символов или строковый скаляр в одной из следующих форм.
Способы определения Range | Описание |
|---|---|
Начальная ячейка | Укажите начальную ячейку для данных в виде символьного или строкового скалярного или двухэлементного числового вектора.
С помощью начальной ячейки функция импорта автоматически определяет объем данных, начиная импорт в начальной ячейке и заканчивая последней пустой строкой или нижним колонтитулом. Пример:
|
Прямоугольный диапазон | Укажите диапазон с помощью синтаксиса Пример: |
Не указан или пуст | Если не указано, Пример: Примечание.Используемый диапазон относится к прямоугольной части электронной таблицы, которая фактически содержит данные. |
Диапазон строк | Можно определить диапазон, указав начальную и конечную строки с помощью обозначений строк Excel. Тогда Пример: |
Диапазон столбцов | Можно определить диапазон, указав начальный и конечный столбцы с помощью обозначений столбцов Excel. Тогда Пример: |
Именованный диапазон в Excel | В Excel можно создавать имена для идентификации диапазонов в электронной таблице. Например, можно выбрать прямоугольную часть электронной таблицы и вызвать ее Пример: |
Пример: 'Range', 'A1:F10'
Пример: 'Range', "A1:F10"—
Типы данных: char | string
'UseExcel' - Флажок для запуска экземпляра Microsoft Excel для Windowsfalse (по умолчанию) | trueФлажок для запуска экземпляра Microsoft Excel для Windows при чтении данных электронной таблицы, указанного как пара, разделенная запятыми, состоящая из 'UseExcel' и либо true, или false.
Можно установить 'UseExcel' для одного из следующих значений:
true - Функция импорта запускает экземпляр Microsoft Excel при чтении файла.
false - Функция импорта не запускает экземпляр Microsoft Excel при чтении файла. При работе в этом режиме функциональность функции импорта отличается поддержкой форматов файлов и интерактивных функций, таких как формулы и макросы.
UseExcel |
|
|
|---|---|---|
| Поддерживаемые форматы файлов |
|
|
Поддержка интерактивных функций, таких как формулы и макросы | Да | Нет |
При чтении из файлов электронных таблиц на платформах Windows, если требуется запустить экземпляр Microsoft Excel, установите 'UseExcel' параметр для true.
'AttributeSuffix' - суффикс атрибута'Attribute' (по умолчанию) | символьный вектор | строковый скалярсуффикс атрибута, указанный как пара, разделенная запятыми, состоящая из 'AttributeSuffix' и либо вектор символов, либо строковый скаляр. Этот аргумент указывает суффикс, который функция чтения добавляет ко всем переменным таблицы, соответствующим атрибутам во входном XML-файле. Если не указать 'AttributeSuffix', то функция чтения по умолчанию добавляет суффикс 'Attribute' ко всем именам переменных, соответствующим атрибутам во входном XML-файле.
Пример: 'AttributeSuffix','_att'
'ImportAttributes' - Импорт атрибутов1 или true (по умолчанию) | логический 0 или falseИмпорт атрибутов, указанных как разделенная запятыми пара, состоящая из 'ImportAttributes' и либо 1 (true) или 0 (false). При указании false, то функция чтения не будет импортировать атрибуты XML во входной файл как переменные в выходной таблице.
Пример: 'ImportAttributes',false
'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”]
T - Выходная таблицаВыходная таблица, возвращенная как таблица. В таблице могут храниться такие метаданные, как описания, единицы измерения переменных, имена переменных и имена строк. Дополнительные сведения см. в разделе «Свойства» table.
Большие файлы в формате XLSX иногда загружаются медленно. Для повышения производительности импорта и экспорта корпорация Майкрософт рекомендует использовать формат XLSB.
Следующие синтаксисы XPath поддерживаются для аргументов «имя-значение селектора XPath», таких как RowSelector или VariableSelector.
Чтобы выбрать каждый узел, имя которого соответствует выбранному узлу, независимо от его расположения в документе, используйте "//myNode" синтаксис. Вы можете использовать "//myNode" чтобы опустить выражение XPath, предшествующее узлу, который требуется выбрать.
Чтобы прочитать один из нескольких одноранговых узлов под одним родительским узлом в файле, можно указать ChildNode[, где n]n соответствует одноранговому узлу, который требуется проиндексировать. Например, путь "/RootNode/ChildNode[2]" выбирает второе ChildNode элемент, родительский элемент которого RootNode.
Чтобы считать значение атрибута, принадлежащего узлу элемента во входном XML-файле, укажите @ перед именем атрибута. Например, "/RootNode/ChildNode[2]/@AttributeName" выбирает атрибут AttributeName относится ко второму ChildNode элемент, родительский элемент которого RootNode.
detectImportOptions функция, используемая по умолчанию для импорта табличных данныхВ R2020a изменилось поведение
По умолчанию readtable функция использует результаты detectImportOptions для импорта табличных данных. По существу, эти два вызова функций ведут себя одинаково.
T = readtable(filename) T = readtable(filename,detectImportOptions(filename))
В R2020a, существует несколько различий между поведением по умолчанию readtable и его поведение по умолчанию в предыдущих версиях.
Описание входных полей или строк | R2020a по умолчанию | Поведение по умолчанию в предыдущих версиях |
|---|---|---|
Первая строка не имеет текста для назначения в качестве имен переменных выходной таблицы | Присваивает имена | Преобразует значения в первой строке значений данных в имена переменных выходной таблицы |
Несколько строк текста как строки заголовка |
|
|
Пустые поля | Рассматривать как отсутствующие значения для обнаруженного типа данных | Рассматривать как пустые символьные векторы или строки |
Значения в кавычках | Рассматривать как обнаруженный тип данных | Рассматривать как текст |
Текст, который невозможно преобразовать | Рассматривать как отсутствующие значения для обнаруженного типа данных | Рассматривать как текст |
Нечисловой символ отслеживает числовой символ без разделителя между ними | Рассматривать символы как нечисловые | Обрабатывать числовые и нечисловые символы, как если бы разделитель разделял их |
Входной текстовый файл содержит строки с различным количеством разделителей | Возвращает выходную таблицу с дополнительными переменными | Вызывает сообщение об ошибке |
Звонить readtable с поведением по умолчанию до R2019b, используйте 'Format','auto' аргумент пары имя-значение.
T = readtable(filename,'Format','auto')
detectImportOptions | Инструмент импорта | preview | readcell | readmatrix | readtimetable | readvars | setvaropts | table | textscan | writetable
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.