Настройки импорта возражают для разделенного текста
Объект DelimitedTextImportOptions
позволяет вам задать, как MATLAB® импортирует табличные данные из файлов разделенного текста. Объект содержит свойства, которые управляют процессом импорта данных, включая обработку ошибок и недостающих данных.
Можно создать объект DelimitedTextImportOptions
с помощью или функции detectImportOptions
или функции delimitedTextImportOptions
(описанный здесь):
Используйте detectImportOptions
, чтобы обнаружить и заполнить свойства импорта на основе содержимого файла разделенного текста, заданного в filename
.
opts = detectImportOptions(filename);
Используйте delimitedTextImportOptions
, чтобы задать свойства импорта на основе ваших требований импорта.
opts = delimitedTextImportOptions
opts = delimitedTextImportOptions('NumVariables',numVars)
opts = delimitedTextImportOptions(___,Name,Value)
opts = delimitedTextImportOptions
создает объект DelimitedTextImportOptions
с одной переменной.
opts = delimitedTextImportOptions('NumVariables',
создает объект с количеством переменных, заданных в numVars
)numVars
.
opts = delimitedTextImportOptions(___,
задает дополнительные свойства для объекта Name,Value
)DelimitedTextImportOptions
с помощью одного или нескольких аргументов пары "имя-значение".
numVars
— Количество переменныхКоличество переменных, заданных как положительное скалярное целое число.
Имена переменных
Имена переменныхИмена переменных, заданные как массив ячеек из символьных векторов или массив строк. Свойство VariableNames
содержит имена, чтобы использовать при импорте переменных.
Если данные содержат переменные N
, но никакие имена переменных не обнаруживаются, то свойство VariableNames
содержит {'Var1','Var2',...,'VarN'}
.
Пример: opts.VariableNames
возвращает текущие (обнаруженные) имена переменных.
Пример: opts.VariableNames(3) = {'Height'}
изменяет название третьей переменной к Height
.
Типы данных: char
| string
| cell
VariableTypes
Типы данных переменныхТипы данных переменных, заданные как массив ячеек из символьных векторов или массив строк. Свойство VariableTypes
определяет типы данных использовать при импорте переменных. При присвоении новых значений задайте VariableTypes
как массив ячеек допустимых имен типов данных.
Чтобы обновить свойство VariableTypes
, используйте функцию setvartype
.
Пример: opts.VariableTypes
возвращает текущие (обнаруженные) типы данных переменных.
Пример: opts = setvartype(opts,'Height',{'double'})
изменяет тип данных переменной Height
к double
.
Типы данных: cell
| single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| logical
| char
| string
| categorical
| datetime
SelectedVariableNames
Подмножество переменных, чтобы импортироватьПодмножество переменных, чтобы импортировать, заданный как вектор символов, представляет в виде строки скаляр, массив ячеек из символьных векторов, массив строк или массив числовых индексов.
SelectedVariableNames
должен быть подмножеством имен, содержавшихся в свойстве VariableNames
. По умолчанию SelectedVariableNames
содержит все имена переменных из свойства VariableNames
, что означает, что все переменные импортируются.
Используйте свойство SelectedVariableNames
импортировать только переменные интереса. Задайте подмножество переменных с помощью свойства SelectedVariableNames
и используйте readtable
, чтобы импортировать только то подмножество.
Пример: opts.SelectedVariableNames = {'Height','LastName'}
выбирает только две переменные, Height
и LastName
, для операции импорта.
Пример: opts.SelectedVariableNames = [1 5]
выбирает только две переменные, первую переменную и пятую переменную, для операции импорта.
Пример: T = readtable(filename,opts)
возвращает таблицу, содержащую только переменные, заданные в свойстве SelectedVariableNames
объекта opts
.
Типы данных: uint16
| uint32
| uint64
| char
| string
| cell
VariableOptions
Введите определенные переменные настройки импортаВведите определенные переменные настройки импорта, возвращенные как массив переменных объектов настроек импорта. Массив содержит объект, соответствующий каждой переменной, заданной в свойстве VariableNames
. Каждый объект в массиве содержит свойства, которые поддерживают импорт данных с определенным типом данных.
Параметры переменной поддерживают эти типы данных: числовой, текст, logical
, datetime
или categorical
.
Чтобы запросить ток (или обнаруженный) опции для переменной, используйте функцию getvaropts
.
Чтобы установить и настроить опции для переменной, используйте функцию setvaropts
.
Пример: opts.VariableOptions
возвращает набор объектов VariableImportOptions
, одно соответствие каждой переменной в данных.
Пример: getvaropts(opts,'Height')
возвращает объект VariableImportOptions
для переменной Height
.
Пример: opts = setvaropts(opts,'Height','FillValue',0)
устанавливает свойство FillValue
для переменной Height
к 0
.
DataLines
— Местоположение данныхМестоположение данных, заданное как положительное скалярное целое число или N-
by-2
массив положительных скалярных целых чисел. Задайте DataLines
с помощью одной из следующих форм.
Задайте как |
Описание |
---|---|
|
Задайте первую строку, которая содержит данные. Определение значения с помощью
|
| Задайте область значений строки, которая содержит данные. Значения в массиве |
|
Задайте несколько областей значений строки, чтобы считать с Допустимый массив нескольких областей значений строки должен:
При определении нескольких областей значений строки используйте |
Пример: opts.DataLines = 5
устанавливает свойство DataLines
на значение [5 inf]
. Считайте все строки данных, начинающих со строки 5
в конец.
Пример: opts.DataLines = [2 6]
устанавливает свойство прочитать строки 2
через 6
.
Пример: opts.DataLines = [1 3; 5 6; 8 inf]
устанавливает свойство считать строки 1
, 2
, 3
, 5
, 6
и все строки между 8
и концом файла.
Типы данных: single
| double
| uint8
| uint16
| uint32
| uint64
RowNamesColumn
Строка называет местоположение0
(значение по умолчанию) | положительное скалярное целое числоСтрока называет местоположение, заданное как положительное скалярное целое число. Свойство RowNamesColumn
задает местоположение столбца, содержащего имена строки.
Если RowNamesColumn
задан как 0, то не импортируйте имена строки. В противном случае импортируйте имена строки из заданного столбца.
Пример: opts.RowNamesColumn = 2;
Типы данных: single
| double
| uint8
| uint16
| uint32
| uint64
VariableNamesLine
Местоположение имен переменных0
(значение по умолчанию) | положительное скалярное целое числоМестоположение имен переменных, заданное как положительное скалярное целое число. Свойство VariableNamesLine
задает номер строки, где имена переменных расположены.
Если VariableNamesLine
задан как 0, то не импортируйте имена переменных. В противном случае импортируйте имена переменных из заданной строки.
Пример: opts.VariableNamesLine = 6;
Типы данных: single
| double
| uint8
| uint16
| uint32
| uint64
VariableDescriptionsLine
Местоположение описания переменной0
(значение по умолчанию) | положительное скалярное целое числоМестоположение описания переменной, заданное как положительное скалярное целое число. Свойство VariableDescriptionsLine
задает номер строки, где описания переменной расположены.
Если VariableDescriptionsLine
задан как 0, то не импортируйте описания переменной. В противном случае импортируйте описания переменной из заданной строки.
Пример: opts.VariableDescriptionsLine = 7;
Типы данных: single
| double
| uint8
| uint16
| uint32
| uint64
VariableUnitsLine
Переменное модульное местоположение0
(значение по умолчанию) | положительное скалярное целое числоПеременное модульное местоположение, заданное как положительное скалярное целое число. Свойство VariableUnitsLine
задает номер строки, где переменные модули расположены.
Если VariableUnitsLine
задан как 0, то не импортируйте переменные модули. В противном случае импортируйте переменные модули из заданной строки.
Пример: opts.VariableUnitsLine = 8;
Типы данных: single
| double
| uint8
| uint16
| uint32
| uint64
Delimiter
— Символы разделителя полейСимволы разделителя полей, заданные как вектор символов, представляют в виде строки скаляр, массив ячеек из символьных векторов или массив строк.
Пример: 'Delimiter','|'
Пример: 'Delimiter',{';','*'}
Типы данных: char
| string
| cell
Whitespace
— Символы, чтобы обработать как пробелСимволы, чтобы обработать как пробел, заданный как вектор символов или представить в виде строки скаляр, содержащий один или несколько символов.
Пример: 'Whitespace',' _'
Пример: 'Whitespace','?!.,'
'LineEnding'
Символы конца строки{'\n','\r','\r\n'}
(значение по умолчанию) | вектор символов | представляет скаляр в виде строки | массив ячеек из символьных векторов | массив строкСимволы конца строки, заданные как вектор символов, представляют в виде строки скаляр, массив ячеек из символьных векторов или массив строк.
Пример: 'LineEnding','\n'
Пример: 'LineEnding','\r\n'
Пример: 'LineEnding',{'\b',':'}
Типы данных: char
| string
| cell
CommentStyle
Стиль комментариевСтиль комментариев, заданных как вектор символов, представляет в виде строки скаляр, массив ячеек из символьных векторов или массив строк.
Например, чтобы проигнорировать текст после знака процента на той же строке, задайте CommentStyle
как '%'
.
Пример: 'CommentStyle',{'/*'}
Типы данных: char
| string
| cell
ConsecutiveDelimitersRule
Процедура, чтобы обработать последовательные разделители'split'
| 'join'
| 'error'
Процедура, чтобы обработать последовательные разделители, заданные как одно из значений в этой таблице.
ConsecutiveDelimitersRule | Поведение |
---|---|
'split' | Разделите последовательные разделители в несколько полей. |
'join' | Соедините разделители в один разделитель. |
'error' | Возвратите ошибку и прервите операцию импорта. |
Типы данных: char | string
LeadingDelimitersRule
Процедура, чтобы управлять ведущими разделителями'keep'
| 'ignore'
| 'error'
Процедура, чтобы управлять ведущими разделителями, заданными как одно из значений в этой таблице.
LeadingDelimitersRule | Поведение |
---|---|
'keep' | Сохраните разделитель. |
'ignore' | Проигнорируйте разделитель. |
'error' | Возвратите ошибку и прервите операцию импорта. |
Encoding
— Схема кодировки символов'system'
| 'UTF-8'
| 'ISO-8859-1'
| 'windows-1251'
| 'windows-1252'
|...Схема кодировки символов сопоставлена с файлом, заданным как пара, разделенная запятой, состоящая из 'Encoding'
и 'system'
или имени схемы кодирования стандартного символа, такого как одно из значений в этой таблице.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
|
Пример: 'Encoding','system'
использует кодирование системного значения по умолчанию.
Типы данных: char | string
MissingRule
Процедура, чтобы управлять недостающими данными'fill'
| 'error'
| 'omitrow'
| 'omitvar'
Процедура, чтобы управлять недостающими данными, заданными как одно из значений в этой таблице.
MissingRule | Поведение |
---|---|
'fill' | Замените недостающие данные на содержимое свойства Свойство |
'error' | Прекратите импортировать и отобразите сообщение об ошибке, показывающее недостающую запись и поле. |
'omitrow' | Не используйте строки, которые содержат недостающие данные. |
'omitvar' | Не используйте переменные, которые содержат недостающие данные. |
Пример: opts.MissingRule = 'omitrow';
uint32
Типы данных: char | string
EmptyLineRule
Процедура, чтобы обработать пустые строки'skip'
| 'read'
| 'error'
Процедура, чтобы обработать пустые строки в данных, заданных как 'skip'
, 'read'
или 'error'
. Функция импорта интерпретирует пробел как пустой.
EmptyLineRule | Поведение |
---|---|
'skip' | Пропустите пустые строки. |
'read' | Импортируйте пустые строки. Функция импорта анализирует пустую строку с помощью значений, заданных в VariableWidths , VariableOptions , MissingRule и других соответствующих свойствах, таких как Whitespace . |
'error' | Отобразите сообщение об ошибке и прервите операцию импорта. |
Пример: opts.EmptyLineRule = 'skip';
Типы данных: char | string
ImportErrorRule
Процедура, чтобы обработать ошибки импорта'fill'
| 'error'
| 'omitrow'
| 'omitvar'
Процедура, чтобы обработать ошибки импорта, заданные как одно из значений в этой таблице.
ImportErrorRule | Поведение |
---|---|
'fill' | Замените данные, где ошибка произошла с содержимым свойства Свойство |
'error' | Прекратите импортировать и отобразите сообщение об ошибке, показывающее вызывающую ошибку запись и поле. |
'omitrow' | Не используйте строки, где ошибки происходят. |
'omitvar' | Не используйте переменные, где ошибки происходят. |
Пример: opts.ImportErrorRule = 'omitvar';
Типы данных: char | string
ExtraColumnsRule
Процедура, чтобы обработать дополнительные столбцы'addvars'
| 'ignore'
| 'wrap'
| 'error'
Процедура, чтобы обработать дополнительные столбцы в данных, заданных как одно из значений в этой таблице.
ExtraColumnsRule | Поведение |
---|---|
'addvars' | Чтобы импортировать дополнительные столбцы, создайте новые переменные. Если существуют дополнительные столбцы ПРИМЕЧАНИЕ: дополнительные столбцы импортируются как текст с данными type |
'ignore' | Проигнорируйте дополнительные столбцы данных. |
'wrap' | Перенесите дополнительные столбцы данных к новым записям. Это действие не изменяет количество переменных. |
'error' | Отобразите сообщение об ошибке и прервите операцию импорта. |
Типы данных: char | string
getvaropts | Получите переменные настройки импорта |
setvaropts | Установите переменные настройки импорта |
setvartype | Установите типы данных переменных |
preview | Предварительный просмотр восьми строк из файла с помощью параметров импорта |
Задайте объект настроек импорта считать несколько переменных из patients.dat
.
На основе содержимого вашего файла задайте эти переменные свойства: имена, типы, символ-разделитель, данные стартовое местоположение и правило дополнительного столбца.
varNames = {'LastName','Gender','Age','Location','Height','Weight','Smoker'} ; varTypes = {'char','categorical','int32','char','double','double','logical'} ; delimiter = ','; dataStartLine = 2; extraColRule = 'ignore';
Используйте функцию delimitedTextImportOptions
и вашу переменную информацию, чтобы инициализировать объект opts
настроек импорта.
opts = delimitedTextImportOptions('VariableNames',varNames,... 'VariableTypes',varTypes,... 'Delimiter',delimiter,... 'DataLines', dataStartLine,... 'ExtraColumnsRule',extraColRule);
Используйте функцию preview
с объектом настроек импорта предварительно просмотреть данные.
preview('patients.dat',opts)
ans=8×7 table
LastName Gender Age Location Height Weight Smoker
__________ ______ ___ ___________________________ ______ ______ ______
'Smith' Male 38 'County General Hospital' 71 176 false
'Johnson' Male 43 'VA Hospital' 69 163 false
'Williams' Female 38 'St. Mary's Medical Center' 64 131 false
'Jones' Female 40 'VA Hospital' 67 133 false
'Brown' Female 49 'County General Hospital' 64 119 false
'Davis' Female 46 'St. Mary's Medical Center' 68 142 false
'Miller' Female 33 'VA Hospital' 64 142 false
'Wilson' Male 40 'VA Hospital' 68 180 false
Импортируйте данные с помощью readtable
.
T = readtable('patients.dat',opts); whos T
Name Size Bytes Class Attributes T 100x7 32332 table
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.