Установите настройки импорта переменных
обновляет все переменные в opts = setvaropts(opts,Name,Value)opts объект на основе спецификаций в Name,Value аргументы и возвращает opts объект.
обновляет и возвращает opts = setvaropts(opts,selection,Name,Value)opts для переменных, заданных в selection аргумент, основанный на спецификациях в Name,Value аргументы.
Создайте объект настроек импорта, установите опции для выбранных переменных и импортируйте данные с помощью адаптированных опций и readtable функция.
Создайте объект опции для электронной таблицы patients.xls.
opts = detectImportOptions('patients.xls');Установите FillValue свойство для Smoker, Diastolic, и Systolic переменные.
opts = setvaropts(opts,'Smoker','FillValue',false); opts = setvaropts(opts,{'Diastolic','Systolic'},'FillValue',0);
Выберите переменные, которые необходимо импортировать.
opts.SelectedVariableNames = {'Smoker','Diastolic','Systolic'};Импортируйте переменные и отобразите сводные данные.
T = readtable('patients.xls',opts);
summary(T) Variables:
Smoker: 100x1 logical
Values:
True 34
False 66
Diastolic: 100x1 double
Values:
Min 68
Median 81.5
Max 99
Systolic: 100x1 double
Values:
Min 109
Median 122
Max 138
Для импорта данных с отсутствующими или неполными полями требуется распознать отсутствующие образцы и решить, как будут импортированы отсутствующие образцы. Использование importOptions для захвата обоих этих решений и извлечения данных с помощью readtable.
Создайте объект настроек импорта для файла, обновите свойства, которые управляют импортом недостающих данных, а затем используйте readtable для импорта данных. Обратите внимание, что набор данных airlinesmall.csv имеет две числовые переменные ArrDelay и DepDelay, которые содержат отсутствующие данные, обозначенные NA.
Создайте объект настроек импорта из файла.
opts = detectImportOptions('airlinesmall.csv');Используйте TreatAsMissing Свойство, чтобы указать символы в данных, которые являются держателями мест для отсутствующих образцов. В этом примере две числовые переменные ArrDelay и DepDelay содержат отсутствующие поля, содержащие текст NA.
opts = setvaropts(opts,{'ArrDelay','DepDelay'},'TreatAsMissing','NA');Задайте действие для функции импорта, которое должно выполняться при импорте отсутствующих образцов. См. ImportOptions страница свойств для дополнительных опций.
opts.MissingRule = 'fill';Задайте значение, которое будет использоваться, когда функция импорта найдет отсутствующий образец. Здесь отсутствующие образцы в переменных ArrDelay и DepDelay заменяются 0.
opts = setvaropts(opts,{'ArrDelay','DepDelay'},'FillValue',0);Выберите переменные, с которыми вы хотите работать, и импортируйте их с помощью readtable.
opts.SelectedVariableNames = {'ArrDelay','DepDelay'};
T = readtable('airlinesmall.csv',opts);Исследуйте значения в ArrDelay и DepDelay. Проверьте, что функция импорта заменила отсутствующие значения, обозначенные NA.
T(166:180,:)
ans=15×2 table
ArrDelay DepDelay
________ ________
-1 0
102 105
-11 0
0 0
-1 0
0 0
1 0
1 0
14 0
-14 0
5 0
25 38
0 -5
0 0
6 0
The readtable функция автоматически обнаруживает шестнадцатеричные и двоичные числа с 0x и 0b префиксы. Чтобы импортировать такие числа, когда они не имеют префиксов, используйте объект настроек импорта.
Создайте объект настроек импорта для файла hexAndBinary.txt. Его третий столбец имеет шестнадцатеричные числа без 0x префикс.

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. Установите систему номеров для импорта третьего столбца равной hex.
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
Считайте файл и импортируйте первые три столбца как числовые значения. The readtable функция автоматически обнаруживает, что первый и второй столбцы содержат шестнадцатеричные и двоичные значения. Объект настроек импорта указывает, что третий столбец также содержит шестнадцатеричные значения.
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'}
Используйте setvaropts функция для обновления свойств, которые управляют импортом текстовых данных. Сначала получите объект настроек импорта для файла. Затем исследуйте и обновляйте опции для текстовых переменных. Наконец, импортируйте переменные с помощью readtable функция.
Предварительный просмотр данных в patients.xls. Заметьте текстовые данные в столбце LastName. Здесь показан только предварительный просмотр первых 10 строк.
Получите объект настроек импорта.
opts = detectImportOptions('patients.xls');Получите и исследуйте VariableImportOptions для переменных LastName.
getvaropts(opts,'LastName')ans =
TextVariableImportOptions with properties:
Variable Properties:
Name: 'LastName'
Type: 'char'
FillValue: ''
TreatAsMissing: {}
QuoteRule: 'remove'
Prefixes: {}
Suffixes: {}
EmptyFieldRule: 'missing'
String Options:
WhitespaceRule: 'trim'
Установите тип данных переменной равным string.
opts = setvartype(opts,'LastName','string');
Установите FillValue свойство переменной, чтобы заменить отсутствующие значения на 'NoName'.
opts = setvaropts(opts,'LastName','FillValue','NoName');
Выберите, прочтите и отобразите предпросмотр первых 10 строк переменной.
opts.SelectedVariableNames = 'LastName'; T = readtable('patients.xls',opts); T.LastName(1:10)
ans = 10x1 string
"Smith"
"Johnson"
"Williams"
"Jones"
"Brown"
"Davis"
"Miller"
"Wilson"
"Moore"
"Taylor"
Используйте setvaropts функция для обновления свойств, которые контролируют импорт logical данные. Сначала получите объект настроек импорта для файла. Затем рассмотрим и обновим опции для логических переменных. Наконец, импортируйте переменные с помощью readtable функция.
Предварительный просмотр данных в airlinesmall_subset.xlsx. Заметьте логические данные в столбце Cancelled. Здесь показан только предварительный просмотр строк с 30 по 40.
Получите объект настроек импорта.
opts = detectImportOptions('airlinesmall_subset.xlsx');Получите и исследуйте VariableImportOptions для переменных Cancelled.
getvaropts(opts,'Cancelled')ans =
NumericVariableImportOptions with properties:
Variable Properties:
Name: 'Cancelled'
Type: 'double'
FillValue: NaN
TreatAsMissing: {}
QuoteRule: 'remove'
Prefixes: {}
Suffixes: {}
EmptyFieldRule: 'missing'
Numeric Options:
ExponentCharacter: 'eEdD'
DecimalSeparator: '.'
ThousandsSeparator: ''
TrimNonNumeric: 0
NumberSystem: 'decimal'
Установите тип данных переменной равным logical.
opts = setvartype(opts,'Cancelled','logical');
Установите FillValue свойство переменной, чтобы заменить отсутствующие значения на true.
opts = setvaropts(opts,'Cancelled','FillValue',true);
Выбор, чтение и отображение сводных данных по переменной.
opts.SelectedVariableNames = 'Cancelled'; T = readtable('airlinesmall_subset.xlsx',opts); summary(T)
Variables:
Cancelled: 1338x1 logical
Values:
True 29
False 1309
Использование DatetimeVariableImportOptions свойства для контроля импорта datetime данные. Во-первых, получите ImportOptions объект для файла. Далее исследуйте и обновляйте VariableImportOptions для переменных datetime. Наконец, импортируйте переменные с помощью readtable.
Предварительный просмотр данных в outages.csv. Заметьте данные о дате и времени в столбцах OutageTime и RestorationTime. Здесь показаны только первые 10 строк.
Получите объект настроек импорта.
opts = detectImportOptions('outages.csv');Получите и исследуйте VariableImportOptions для переменных datetime OutageTime и RestorationTime.
varOpts = getvaropts(opts,{'OutageTime','RestorationTime'})varOpts =
1x2 DatetimeVariableImportOptions array with properties:
Name
Type
FillValue
TreatAsMissing
QuoteRule
Prefixes
Suffixes
EmptyFieldRule
DatetimeFormat
DatetimeLocale
TimeZone
InputFormat
Установите FillValue свойство переменных, чтобы заменить отсутствующие значения текущей датой и временем.
opts = setvaropts(opts,{'OutageTime','RestorationTime'},...
'FillValue','now');Выбор, чтение и предварительный просмотр двух переменных. Заметьте отсутствующее значение во второй строке RestorationTime был заполнен текущей датой и временем.
opts.SelectedVariableNames = {'OutageTime','RestorationTime'};
T = readtable('outages.csv',opts);
T(1:10,:)ans=10×2 table
OutageTime RestorationTime
________________ ________________
2002-02-01 12:18 2002-02-07 16:50
2003-01-23 00:49 2021-03-23 17:10
2003-02-07 21:15 2003-02-17 08:14
2004-04-06 05:44 2004-04-06 06:10
2002-03-16 06:18 2002-03-18 23:23
2003-06-18 02:49 2003-06-18 10:54
2004-06-20 14:39 2004-06-20 19:16
2002-06-06 19:28 2002-06-07 00:51
2003-07-16 16:23 2003-07-17 01:12
2004-09-27 11:09 2004-09-27 16:37
Используйте setvaropts функция для обновления свойств, которые контролируют импорт categorical данные. Сначала получите объект настроек импорта для файла. Затем исследуйте и обновляйте опции для категориальных переменных. Наконец, импортируйте переменные с помощью readtable функция.
Предварительный просмотр данных в outages.csv. Заметьте категориальные данные в столбцах Region и Cause. В этой таблице показаны только первые 10 строк.
Получите объект настроек импорта.
opts = detectImportOptions('outages.csv');Получите и исследуйте опции для переменных Region и Cause.
getvaropts(opts,{'Region','Cause'})ans =
1x2 TextVariableImportOptions array with properties:
Name
Type
FillValue
TreatAsMissing
QuoteRule
Prefixes
Suffixes
EmptyFieldRule
WhitespaceRule
Установите тип данных переменных равным categorical.
opts = setvartype(opts,{'Region','Cause'},'categorical');Установите FillValue свойство переменных для замены отсутствующих значений на имя категории 'Miscellaneous'. Задайте TreatAsMissing свойство к 'unknown'.
opts = setvaropts(opts,{'Region','Cause'},...
'FillValue','Miscellaneous',...
'TreatAsMissing','unknown');Выберите, прочтите и отобразите сводные данные по этим двум переменным.
opts.SelectedVariableNames = {'Region','Cause'};
T = readtable('outages.csv',opts);
summary(T)Variables:
Region: 1468x1 categorical
Values:
MidWest 142
NorthEast 557
SouthEast 389
SouthWest 26
West 354
Cause: 1468x1 categorical
Values:
Miscellaneous 24
attack 294
earthquake 2
energy emergency 188
equipment fault 156
fire 25
severe storm 338
thunder storm 201
wind 95
winter storm 145
Импортируйте табличные данные, содержащие переменные с нежелательными символами префикса и суффикса. Сначала создайте объект настроек импорта и предварительный просмотр данных. Затем выберите интересующие переменные и установите их типы и свойства, чтобы удалить нежелательные символы. Наконец, импортируйте интересующие вас данные.
Создайте настройки импорта для файла и предварительный просмотр таблицы.
filename = 'pref_suff_trim.csv';
opts = detectImportOptions(filename);
preview(filename,opts)ans=8×5 table
Time DayOfWeek Power Total_Fees Temperature
_______________________ _______________ ____________ __________ ___________
'Timestamp:1/1/06 0:00' '& Sun %20' '54.5448 MW' '$1.23' '-7.2222 C'
'Timestamp:1/2/06 1:00' '& Thu %20' '.3898 MW' '$300.00' '-7.3056 C'
'Timestamp:1/3/06 2:00' '& Sun %20' '51.6344 MW' '£2.50' '-7.8528 C'
'Timestamp:1/4/06 3:00' '& Sun %20' '51.5597 MW' '$0.00' '-8.1778 C'
'Timestamp:1/5/06 4:00' '& Wed %20' '51.7148 MW' 'Â¥4.00' '-8.9343 C'
'Timestamp:1/6/06 5:00' '& Sun %20' '52.6898 MW' '$0.00' '-8.7556 C'
'Timestamp:1/7/06 6:00' '& Mon %20' '55.341 MW' '$50.70' '-8.0417 C'
'Timestamp:1/8/06 7:00' '& Sat %20' '57.9512 MW' '$0.00' '-8.2028 C'
Выберите интересующие переменные, задайте их типы и исследуйте их значения переменных настроек импорта.
opts.SelectedVariableNames = {'Time','Total_Fees','Temperature'};
opts = setvartype(opts,'Time','datetime');
opts = setvaropts(opts,'Time','InputFormat','MM/dd/uu HH:mm'); % Specify datetime format
opts = setvartype(opts,{'Total_Fees','Temperature'},'double');
getvaropts(opts,{'Time','Total_Fees','Temperature'})ans =
1x3 VariableImportOptions array with properties:
Variable Options:
(1) | (2) | (3)
Name: 'Time' | 'Total_Fees' | 'Temperature'
Type: 'datetime' | 'double' | 'double'
FillValue: [NaT] | [NaN] | [NaN]
TreatAsMissing: {} | {} | {}
QuoteRule: 'remove' | 'remove' | 'remove'
Prefixes: {} | {} | {}
Suffixes: {} | {} | {}
To access sub-properties of each variable, use getvaropts
Установите Prefixes, Suffixes, и TrimNonNumeric свойства переменных настроек импорта для удаления 'Timestamp:' от переменной Time, удалить суффикс 'C' из переменных Temperature, и удалите все нечисловые символы из переменной Total_Fees. Предварительный просмотр таблицы с новыми настройками импорта.
opts = setvaropts(opts,'Time','Prefixes','Timestamp:'); opts = setvaropts(opts,'Temperature','Suffixes','C'); opts = setvaropts(opts,'Total_Fees','TrimNonNumeric',true); preview(filename,opts)
ans=8×3 table
Time Total_Fees Temperature
______________ __________ ___________
01/01/06 00:00 1.23 -7.2222
01/02/06 01:00 300 -7.3056
01/03/06 02:00 2.5 -7.8528
01/04/06 03:00 0 -8.1778
01/05/06 04:00 4 -8.9343
01/06/06 05:00 0 -8.7556
01/07/06 06:00 50.7 -8.0417
01/08/06 07:00 0 -8.2028
Импортируйте данные с помощью readtable.
T = readtable(filename,opts);
Создайте объект настроек импорта для файла, содержащего пустые поля. Используйте EmptyFieldRule параметр для управления импортом пустых полей в ваших данных. Сначала предварительный просмотр данных, а затем установите EmptyFieldRule параметр для определенной переменной. Наконец, установите EmptyFieldRule для всех переменных и импортируйте данные.
Создайте объект настроек импорта для файла, содержащего пустые поля. Получите первые восемь строк таблицы с помощью preview функция. Значение по умолчанию для EmptyFieldRule является 'missing'. Поэтому функция импорта обрабатывает пустые поля как отсутствующие и заменяет их на FillValue значение для этой переменной. Использование VariableOptions для третьей переменной предварительный просмотр данных. Вот, preview функция импортирует пустые поля третьей переменной следующим NaNс.
filename = 'DataWithEmptyFields.csv'; opts = detectImportOptions(filename); opts.VariableOptions(3) % Display the Variable Options for the 3rd Variable
ans =
NumericVariableImportOptions with properties:
Variable Properties:
Name: 'Double'
Type: 'double'
FillValue: NaN
TreatAsMissing: {}
QuoteRule: 'remove'
Prefixes: {}
Suffixes: {}
EmptyFieldRule: 'missing'
Numeric Options:
ExponentCharacter: 'eEdD'
DecimalSeparator: '.'
ThousandsSeparator: ''
TrimNonNumeric: 0
NumberSystem: 'decimal'
preview(filename,opts)
ans=8×7 table
Text Categorical Double Datetime Logical Duration String
__________ ___________ ______ __________ __________ ________ __________
{'abc' } {'a' } 1 01/14/0018 {'TRUE' } 00:00:01 {'abc' }
{0x0 char} {'b' } 2 01/21/0018 {'FALSE' } 09:00:01 {'def' }
{'ghi' } {0x0 char} 3 01/31/0018 {'TRUE' } 02:00:01 {'ghi' }
{'jkl' } {'a' } NaN 02/23/2018 {'FALSE' } 03:00:01 {'jkl' }
{'mno' } {'a' } 4 NaT {'FALSE' } 04:00:01 {'mno' }
{'pqr' } {'b' } 5 01/23/0018 {0x0 char} 05:00:01 {'pqr' }
{'stu' } {'b' } 5 03/23/0018 {'FALSE' } NaN {'stu' }
{0x0 char} {'a' } 6 03/24/2018 {'TRUE' } 07:00:01 {0x0 char}
Задайте EmptyFieldRule для второй переменной в таблице. Сначала выберите переменную, а затем установите EmptyFieldRule на 'auto'. Вот, readtable функция импортирует пустые поля categorical переменная как <undefined>.
opts.SelectedVariableNames = 'Categorical'; opts = setvartype(opts,'Categorical','categorical'); opts = setvaropts(opts,'Categorical','EmptyFieldRule','auto'); T = readtable(filename,opts)
T=10×1 table
Categorical
___________
a
b
<undefined>
a
a
b
b
a
a
<undefined>
Далее установите EmptyFieldRule параметр для всех переменных в таблице. Во-первых, соответствующим образом обновляйте типы данных переменных. В данном примере установите тип данных пятой и седьмой переменных logical и string, соответственно. Затем установите EmptyFieldRule для всех переменных, чтобы 'auto'. Функция импорта импортирует пустые поля на основе типа данных переменной. Вот, readtable функция импортирует пустые поля logical переменная как 0 и пустые поля categorical переменная как <undefined>.
VariableNames = opts.VariableNames; opts.SelectedVariableNames = VariableNames; % select all variables opts = setvartype(opts,{'Logical','String'},{'logical','string'}); opts = setvaropts(opts,VariableNames,'EmptyFieldRule','auto'); T = readtable(filename,opts)
T=10×7 table
Text Categorical Double Datetime Logical Duration String
__________ ___________ ______ __________ _______ ________ _________
{'abc' } a 1 01/14/0018 true 00:00:01 "abc"
{0x0 char} b 2 01/21/0018 false 09:00:01 "def"
{'ghi' } <undefined> 3 01/31/0018 true 02:00:01 "ghi"
{'jkl' } a NaN 02/23/2018 false 03:00:01 "jkl"
{'mno' } a 4 NaT false 04:00:01 "mno"
{'pqr' } b 5 01/23/0018 false 05:00:01 "pqr"
{'stu' } b 5 03/23/0018 false NaN "stu"
{0x0 char} a 6 03/24/2018 true 07:00:01 ""
{0x0 char} a 7 03/25/2018 true 08:00:01 <missing>
{'xyz' } <undefined> NaN NaT true 06:00:01 "xyz"
В дополнение к 'missing' и 'auto', можно также задать EmptyFieldRule параметр в 'error'. Когда вы устанавливаете его на 'error', а readtable функция импортирует пустые поля путем следования процедуре, указанной в ImportErrorRule параметр.
opts - настройки импорта файловSpreadsheetImportOptions | DelimitedTextImportOptions | FixedWidthImportOptionsНастройки импорта файлов, заданные как SpreadsheetImportOptions, DelimitedTextImportOptions, или FixedWidthImportOptions объект, созданный detectImportOptions функция. The opts объект содержит свойства, которые управляют процессом импорта данных, такие как свойства переменных, свойства местоположения данных, правила замены и другие.
selection - Выбранные переменныеВыбранные переменные, заданные как вектор символов, строковый скаляр, массив ячеек из векторов символов, строковые массивы, массив числовых индексов или логический массив.
Имена переменных (или индексы) должны быть подмножеством имен, содержащихся в VariableNames свойство opts объект.
Пример: 'Height'
Пример: {'Height','LastName'}
Пример: [5 9]
Типы данных: char | string | cell | uint64 | logical
Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.
opts = setvaropts(opts,'Weight','FillValue',0) устанавливает FillValue для переменной Weight на 0.'Type' - Тип данных переменных'char' | 'string' | 'single' | 'double' | 'int8' | 'int16' | ...Тип данных переменных, заданный как тип данных, перечисленный в таблице.
Тип данных | Описание |
|---|---|
| Текст. |
| Одно - или плавающая точка двойной точности числа. |
| Подписанные или беззнаковые целые числа, сохраненные как 8-, 16-, 32- или 64-битные целые числа. Целочисленные типы данных не задают значения, соответствующие числам с плавающей
|
| Истинные или ложные значения (для примера, |
| Даты и времена, который задает точки во времени (для примера, |
| Интервалы времени (для примера, 05:13:45 указание 5 часов, 13 минут и 45 секунд). |
| Числовые или текстовые данные, которые задают категории (для примера, |
'FillValue' - Значение замены недостающих данныхtrue | falseЗначение замены для недостающих данных, в зависимости от типа переменной, заданное в виде вектора символов, строкового скаляра, скалярного числа или логического значения true или false.
| Тип переменной | Описание |
|---|---|
| Текст | Текст замены задается как вектор символов или строковый скаляр. Пример:
'not applicable' |
| Числовой | Скалярная цифра для замены отсутствующих образцов Функция импорта преобразует вход для Пример:
0 |
| Логичный |
Пример:
false |
| Datetime | Вектор символов или строковый скаляр или скалярное значение, представляющее данные даты и времени. Для получения дополнительной информации о действительных Пример:
'now' Пример:
[1998 12 1] |
| Длительность | Вектор символов или строковый скаляр или скалярное значение, представляющее данные о длительности. Для получения дополнительной информации о действительных Пример:
'12:30:16' |
| Категоричный | Вектор символов или строковый скаляр, содержащий имя, используемое для категории замены. Пример:
'Miscellaneous' |
Чтобы направить импорт данных, которые отсутствуют, неуправляемые или которые вызывают ошибки, используйте эти четыре свойства вместе: FillValue, TreatAsMissing, MissingRule, и ErrorRule. Функция импорта использует значение, заданное в FillValue свойство, когда:
Данные неперевертываемы или совпадают со значением в TreatAsMissing.
MissingRule или ErrorRule установлено в fill.
'TreatAsMissing' - Текст для интерпретации как отсутствующие данныеТекст для интерпретации как отсутствующие данные, заданный как вектор символов, строковый скаляр, массив ячеек векторов символов или строковых массивов.
Когда функция импорта находит отсутствующие образцы, она использует спецификацию в MissingRule свойство для определения соответствующего действия.
Пример: 'TreatAsMissing',{'NA','TBD'} инструктирует функцию импорта обрабатывать любое вхождение NA или TBD как отсутствующие поля.
Типы данных: char | string | cell
'QuoteRule' - Процедура управления двойными кавычками'remove' | 'keep' | 'error'Процедура управления двойными кавычками в данных, заданная как одно из значений в этой таблице.
| Правило кавычек | Процесс |
|---|---|
'remove' | Если двойные кавычки ( Пример: Если два набора двойных кавычек ( Пример: Если за парой открывающих и закрывающих кавычек, окружающих символы, следуют одинарные одиночные непарные двойные кавычки, то функция импорта игнорирует одинокую непариваемую двойную кавычку. Пример: |
'keep' | Сохраните все кавычки. |
'error' | Сообщите об ошибке при преобразовании данных, которая начинается с двойной кавычки ("). Используйте эту настройку, если поле никогда не должно быть приведено в кавычки. |
Пример: Если 'QuoteRule' установлено в 'remove', затем импортирующая функция импортирует "abc"def" как abcdef".
Типы данных: char | string
'EmptyFieldRule' - Процедура управления пустыми полями'missing' (по умолчанию) | 'error' | 'auto'Процедура управления пустыми полями в данных, заданная как одно из следующих значений:
'missing' - Используйте процедуру, указанную в MissingRule свойство
'error' - Используйте процедуру, указанную в ImportErrorRule свойство
'auto' - Используйте пустое значение на основе типа данных переменной
| Тип данных | Пустое значение |
|---|---|
text | нулевая длина |
numeric |
|
duration |
|
datetime |
|
logical |
|
categorical |
|
Пример: opts = setvaropts(opts,'RestorationTime','EmptyFieldRule','auto');
Типы данных: char | string
'Prefixes' - Текст для удаления из положения префиксаТекст для удаления из положения префикса значения переменных, заданный как вектор символов, массив ячеек векторов символов, строковый скаляр или строковые массивы.
Пример: opts = setvaropts(opts,'Var1','Prefixes','$') устанавливает Prefixes опция для переменной Var1. Если Var1 содержит значение '$500', затем readtable читает как '500'.
Типы данных: char | string | cell
'Suffixes' - Текст для удаления из положения суффиксаТекст для удаления из положения суффикса значения переменных, заданный как вектор символов, массив ячеек векторов символов, строковый скаляр или строковые массивы.
Пример: opts = setvaropts(opts,'Var1','Suffixes','/-') устанавливает Suffixes опция для переменной Var1. Если Var1 содержит значение '$500/-' , затем readtable читает как '$500'.
Типы данных: char | string | cell
'WhiteSpaceRule' - Процедура управления ведущими и конечными белыми пространствами'trim' (по умолчанию) | 'trimleading' | 'trimtrailing' | 'preserve'Процедура управления начальными и конечными белыми пробелами при импорте текстовых данных, заданная как одно из значений в таблице.
| Правило белого пространства | Процесс |
|---|---|
'trim' | Удалите все начальные или конечные белые пробелы из текста. Внутреннее пустое пространство не затронуто. Пример: |
'trimleading' | Удалите только начальные белые пространства. Пример: |
'trimtrailing' | Удалите только конечные пробелы. Пример:
' World Time ' |
'preserve' | Сохраните белые пространства. Пример: |
Типы данных: char | string
'ExponentCharacter' - Символы, указывающие экспонентуСимволы, указывающие экспоненту, заданную как вектор символов или строковый скаляр. Функция импорта использует ExponentCharacter свойство распознавать символы, указывающие экспоненту для числа, выраженного в научном обозначении.
Пример: Если varOpts.ExponentCharacter = 'a', затем функция импорта импортирует текст "1.2a3" как число 1200.
Типы данных: char | string
'DecimalSeparator' - Символы, указывающие десятичный разделительСимволы, указывающие десятичный разделитель в числовых переменных, заданные как вектор символов или строковый скаляр. Функция импорта использует символы, указанные в DecimalSeparator пара "имя-значение", чтобы отличить целочисленную часть числа от десятичной части.
При преобразовании в целочисленные типы данных числа с десятичной частью округляются до ближайшее целого числа.
Пример: Если пара "имя-значение" задана как 'DecimalSeparator',',', затем функция импорта импортирует текст "3,14159" как число 3.14159.
Типы данных: char | string
'ThousandsSeparator' - Символы, которые указывают на группировку тысячСимволы, которые указывают на группировку тысяч в числовых переменных, заданную в виде вектора символов или строкового скаляра. Тысячи символов группировки действуют как визуальные диафрагмы, группируя число в каждые три значения места. Функция импорта использует символы, указанные в ThousandsSeparator Пара "имя-значение" для интерпретации импортируемых чисел.
Пример: Если пара "имя-значение" задана как 'ThousandsSeparator',',', затем функция импорта импортирует текст "1,234,000" как 1234000.
Типы данных: char | string
'TrimNonNumeric' - Удаление нечисловых символовfalse (по умолчанию) | trueУдалите нечисловые символы из числовой переменной, заданной в виде логического true или false.
Пример: Если пара "имя-значение" задана как 'TrimNonNumeric',true, затем функция импорта читает '$500/-' как 500.
Типы данных: logical
'NumberSystem' - Система интерпретации числовых переменных'decimal' (по умолчанию) | 'hex' | 'binary'Система интерпретации числовых переменных, заданная как 'decimal', 'hex', или 'binary'.
Значение | Описание |
|---|---|
|
|
|
|
|
|
'TrueSymbols' - Текст для обработки как логическое значение trueТекст, который рассматривается как логическое значение true, заданный как вектор символов, строковый скаляр, массив ячеек из векторов символов или строковые массивы.
Пример: Если varOpts.TrueSymbols = {'t','TRUE'}, затем функция импорта импортирует все поля, содержащие t или TRUE как логическое значение true.
Типы данных: char | string | cell
'FalseSymbols' - Текст для обработки как логическое значение falseТекст, который рассматривается как логическое значение false, заданный как вектор символов, строковый скаляр, массив ячеек из векторов символов или строковые массивы.
Пример: Если varOpts.FalseSymbols = {'f','FALSE'}, затем функция импорта импортирует все поля, содержащие f или FALSE как логическое значение false.
Типы данных: char | string | cell
'CaseSensitive' - Индикатор, соответствующий случаюtrue | false Индикатор, соответствующий случаю, заданный как логическое значение true или false.
Чтобы интерпретировать входные данные как отсутствующие, true, или falseфункция импорта соответствует данным значениям, указанным в TreatAsMissing, TrueSymbols, и FalseSymbols.
'DatetimeFormat' - Формат отображения'default' | 'defaultdate' | 'preserveinput' | пользовательский формат | вектор символов | строковый скалярФормат отображения, заданный как вектор символов или строковый скаляр. The DatetimeFormat свойство контролирует формат отображения дат и времени в выходах. Задайте DatetimeFormat как одно из следующих значений.
Значение DatetimeFormat | Описание |
|---|---|
| Используйте формат отображения по умолчанию. |
| Используйте формат отображения по умолчанию для значений datetime, созданных без временных компонентов. |
| Используйте формат, заданный форматом входа, |
| Пользовательские форматы | Используйте буквы |
Формат по умолчанию зависит от локали системы. Для изменения формата отображения по умолчанию см. раздел Формат datetime по умолчанию.
Типы данных: char | string
'InputFormat' - Формат входного текстаФормат текста входа, представляющего даты и времена, заданный как вектор символов или строковый скаляр, содержащий идентификаторы букв.
В этой таблице показаны несколько общие входы и примеры форматированного входа для даты, субботы, 19 апреля 2014 г., в 21:41:06 в Нью-Йорке .
Значение InputFormat | Пример |
|---|---|
'yyyy-MM-dd' | 2014-04-19 |
'dd/MM/yyyy' | 19/04/2014 |
'dd.MM.yyyy' | 19.04.2014 |
'yyyy年 MM月 dd日' | 2014年 04月 19日 |
'MMMM d, yyyy' | April 19, 2014 |
'eeee, MMMM d, yyyy h:mm a' | Saturday, April 19, 2014 9:41 PM |
'MMMM d, yyyy HH:mm:ss Z' | April 19, 2014 21:41:06 -0400 |
'yyyy-MM-dd''T''HH:mmXXX' | 2014-04-19T21:41-04:00 |
Полный список допустимых идентификаторов букв см. в Format свойство для массивов datetime.
Пример: 'InputFormat','eeee, MMMM d, yyyy HH:mm:ss'
Типы данных: char | string
'DatetimeLocale' - Локаль для интерпретации датЛокаль для интерпретации дат, заданная как вектор символов или строковый скаляр. The DatetimeLocale значение определяет, как функция импорта интерпретирует текст, который представляет даты и времена.
Установите DatetimeLocale к одному из следующих значений:
'system' - Укажите локаль системы.
Вектор символов или строковый скаляр - Используйте форму , где xx_ YYxx является строчным двухбуквенным кодом ISO 639-1, который задает язык и YY является заглавным кодом ISO 3166-1 альфа-2, который задает страну.
В этой таблице перечислены некоторые общие значения для локали.
| Локаль | Язык | Страна |
|---|---|---|
'de_DE' | Немецкий язык | Германия |
'en_GB' | Английский язык | Великобритания |
'en_US' | Английский язык | США |
'es_ES' | Испанский язык | Испания |
'fr_FR' | Французский язык | Франция |
'it_IT' | Итальянский язык | Италия |
'ja_JP' | Японский язык | Япония |
'ko_KR' | Корейский язык | Корея |
'nl_NL' | Нидерландский язык | Нидерланды |
'zh_CN' | Китайский (упрощенный) | Китай |
Пример: varOpts.DatetimeLocale = 'de_DE' устанавливает локаль даты на немецком языке.
Примечание
The Locale значение определяет, как интерпретируются входные значения. Форматы отображения и язык задаются Локалью опции в разделе Datetime format окна Настроек. Для изменения локали datetime по умолчанию смотрите Задать настройки Командного окна.
Типы данных: char | string
'TimeZone' - Часовой пояс'' (по умолчанию) | символьный вектор | строковый скалярЧасовой пояс, заданный как вектор символов или строковый скаляр. Значение TimeZone задает часовой пояс, который функция импорта использует для интерпретации входных данных. TimeZone также задает часовой пояс массива выхода. Если входные данные являются векторами символов, которые включают часовой пояс, то функция импорта преобразует все значения в заданный часовой пояс.
TimeZone используйте любое из следующих значений:
'', для создания «unzoned» значений datetime, которые не относятся к определенному часовому поясу.
область часового пояса из базы данных часового пояса IANA; для примера, 'America/Los_Angeles'. Имя области часового пояса учитывает текущие и исторические правила для стандартных и дневных смещений от UTC, которые наблюдаются в географической области.
Вектор символов ISO 8601 вида +HH:mm или -HH:mm. Для примера, '+01:00', задает часовой пояс, который является фиксированным смещением от UTC.
'UTC', для создания значений datetime в универсальном скоординированном времени.
'UTCLeapSeconds', чтобы создать значения datetime в Универсальном Скоординированном Времени, которые составляют високосные секунды.
В этой таблице перечислены некоторые общие имена областей часовых поясов из базы данных временных зон IANA.
Значение TimeZone | Смещение UTC | Смещение UTC DST |
|---|---|---|
'Africa/Johannesburg' | +02:00 | +02:00 |
'America/Chicago' | −06:00 | −05:00 |
'America/Denver' | −07:00 | −06:00 |
'America/Los_Angeles' | −08:00 | −07:00 |
'America/New_York' | −05:00 | −04:00 |
'America/Sao_Paulo' | −03:00 | −02:00 |
'Asia/Hong_Kong' | +08:00 | +08:00 |
'Asia/Kolkata' | +05:30 | +05:30 |
'Asia/Tokyo' | +09:00 | +09:00 |
'Australia/Sydney' | +10:00 | +11:00 |
'Europe/London' | +00:00 | +01:00 |
'Europe/Zurich' | +01:00 | +02:00 |
Массивы datetime без заданных TimeZone невозможно сравнить или объединить с массивами, которые имеют свои TimeZone значение свойства установлено на определенный часовой пояс.
Типы данных: char | string
'Categories' - Ожидаемые категорииОжидаемые категории, заданные как массив ячеек из векторов символов или строковых массивов, содержащий список имен категорий.
Имена в входах должны совпадать с одним из имен, указанных в Categories свойство, чтобы избежать ошибки преобразования.
Пример: varOpts.Categories = {'BareLand','Forest','Water','Roads','Buildings'};
'Protected' - Индикатор защиты категорииtrue | falseИндикатор защиты категории, заданный как логическое true или false. Категории порядковых категориальных массивов всегда защищены. Если на Ordinal для свойства задано значение true, затем значение по умолчанию для Protected является true. В противном случае значение для Protected является false. Для получения дополнительной информации о категориальных массивах см. categorical страница с описанием функции.
'Ordinal' - Математический индикатор упорядоченного расположенияfalse (по умолчанию) | true | 0 | 1Математический индикатор упорядоченного расположения, заданный как false, true, 0, или 1. Для получения дополнительной информации о категориальных массивах см. categorical страница с описанием функции.
'InputFormat' - Формат входного текстаФормат текста входа, представляющего данные продолжительности, заданный как вектор символов или строковые массивы.
Задайте InputFormat как любой из следующих форматов, где dd, hh, mm, и ss представляют дни, часы, минуты и секунды, соответственно:
'dd:hh:mm:ss'
'hh:mm:ss'
'mm:ss'
'hh:mm'
Любой из первых трех форматов с до девяти S символы для указания дробных вторых цифр, таких как 'hh:mm:ss.SSSS'
Пример: varOpts.InputFormat = 'dd:hh:mm:ss'
Типы данных: char | string
'DurationFormat' - Формат отображения данных длительностиОтобразите формат данных длительности, заданный как вектор символов или строковый скаляр.
Для чисел с модулями времени задайте одно из следующих значений:
'y' - годы фиксированной длины, где 1 год равен 365,2425 дней
'd' - Дни фиксированной длины, где 1 день равен 24 часам
'h' - Часы
'm' - Минуты
's' - Секунды
Для цифрового таймера укажите один из следующих форматов:
'dd:hh:mm:ss'
'hh:mm:ss'
'mm:ss'
'hh:mm'
Любой из первых трех форматов с до девяти S символы для указания дробных вторых цифр, таких как 'hh:mm:ss.SSSS'
Пример: DurationFormat может быть либо одним числом с временными модулями (такими как 0.5 yr) или цифровой таймер (например 10:30:15 в течение 10 часов, 30 минут и 15 секунд).
Типы данных: char | string
'DecimalSeparator' - Символы, разделяющие дробные секунды. (по умолчанию) | символьный вектор | строковый скалярСимволы, разделяющие дробные секунды, заданные как вектор символов или строковый скаляр. Функция импорта использует DecimalSeparator свойство, чтобы отличить целочисленную часть значения длительности от части дробных секунд.
Типы данных: char | string
'FieldSeparator' - Символы, указывающие на разделение полей: (по умолчанию) | символьный вектор | строковый скалярСимволы, указывающие разделение поля в данных длительности, заданные как вектор символов или строковый скаляр.
Типы данных: char | string
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.